Swirly Mein Kopf

Wednesday, April 24. 2013

The carbondioxide footprint of Debian's Haskell packages

Debian Haskell

By now, Debian ships quite a lot of Haskell packages (~600). Because of GHC's ABI volatility, whenever we upload a new version of a library, we have to rebuild all libraries that depend on that. In particular, if we upload a new version of the compiler itself, we have to rebuild all Haskell library packages. So we have to rebuild stuff a lot. Luckily, Debian has a decent autobuilding setup so that I just need to tell it what to rebuild, and the rest happens automatically (including figuring out the actual order to build things).

I was curious how much we use the buildd system compared to other packages, and also how long the builders are busy building Haskell packages. All the data is in a postgresql database on buildd.debian.org, so with some python and javascript code, I can visualize this. The graphs show the number of all uploads by autobuilder on the amd64 architecture, with haskell uploads specially marked, and the second graph does the same for the build time. You can select time ranges and get aggregate statistics for that time span.

During the last four days a complete rebuild was happening, due to the upload of GHC 7.6.3. During these 2 days and 18 hours building 537 packages took 48 hours of build time and produced 15kg of CO2. That is 94% of all uploads and 91% the total build time. The numbers are lower for the whole of last year: 52% of uploads, 31% of build time and 57kg of CO2. (The CO2 numbers are very rough estimates.)

Note that amd64 is a bit special, as most packages are uploaded on this architecture by the developers, so no automatic builds are happening. On other architectures have, every upload of a (arch:any) package is built, so the share of Haskell packages will be lower. Unfortunately, at the moment the database does not provide me with a table across all architectures (and I was too lazy to make it configurable yet).

Trackbacks


No Trackbacks

Comments

Display comments as (Linear | Threaded)

*Interesting work :-)

One question - what assumptions / estimates do you make when converting from build time to CO2 output? Do you know what the power consumption is for each machine?
#1 Steve McIntyre (Homepage) on 2013-04-25 02:30 (Reply)
*See the footnote on the page with the graphs, it lists the wattage and CO2/kWh that I assume – very rough estimates, of course.
#1.1 Joachim Breitner (Homepage) on 2013-04-25 10:21 (Reply)
*Do you want to let buy each team to by CO_2 certificates? Considering the current price tag according to your calculation this would make 1-2 Eurocent.
;-)
#2 Andreas Tille on 2013-04-25 12:07 (Reply)

Add Comment



To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

Gravatar, Favatar, Identica author images supported.
What is the first name of the owner of this blog? / Wie heißt der Betreiber diess Blogs mit Vornamen?
 
 
Nach oben