This is blog 11 in the blog series about Green IT.
Although the proportion of green energy is growing in the Netherlands, currently just 40% of our energy comes from renewable sources (1). The lion’s share is still generated using fossil fuels, also known as ‘grey energy’. Green energy isn’t always sufficiently available and remains dependent on weather conditions. The third principle of green software concerns creative solutions to better match supply and demand.
Principle 3 - Carbon awareness (2)
Carbon awareness means that you align your work activities with times when green energy is amply available. You can compare this to how, in the past, people would run the laundry machine at night because of the lower electricity price during those hours. Today it is better to run the machine during the day when more green energy is available thanks to sun and wind. This also applies for using ICT. By carefully choosing when to perform which ICT activities, you can reduce your CO2 emission. How does it work?
Pay attention to carbon intensity
To understand this well, we should first explain what carbon intensity means. This metric indicates how clean our electricity is and refers to the amount of CO2 (in grammes) that is emitted when producing one kilowatt hour (kWh) of electricity. (3) The graph below (taken from the Green Software Foundation website) clarifies this.
The graph shows how the energy mix is composed during the day. In the early morning, when there’s not a lot of sun but energy use is high, the proportion of grey energy (from coal and gas) is higher than the proportion of wind and solar energy. As the day progresses and the energy use reduces (to the grey dotted line), more wind and solar energy becomes available.
A power plant cannot be turned on and off. That is why there will always be some share of grey energy, as the column shows at midday. You can compare this to the pilot flame in a gas-powered boiler. As demand increases and the proportion of green energy reduces, the grey power plant scales up its production.
Since we do not (yet) have the ability to store solar and wind energy on a large scale, you can see that the surplus energy above the dotted line is ‘curtailed’, or ‘thrown away’. Later in the day, when energy use increases again (until the dotted line), less surplus energy is thrown away. At that point, the proportion of wind energy in the mix increases. In this way, the carbon intensity fluctuates throughout the day.
When we apply this to the heritage sector, it means for example that it would be best to train image recognition software on days with lots of sun and wind. The same goes for migrating large volumes of data, for uploading large files to the e-depot, or for the performance of fixity checks that require relatively much energy to check the integrity of files.
Website available only when the sun shines
A person who takes this principle to extremes is the Belgian Kris De Decker, founder and author of ‘Low-Tech Magazine’. His online publication is available in several languages, and it runs entirely on solar energy. He has a solar panel on his balcony in Barcelona that supplies the energy for the website. If the sun doesn’t shine, the website goes offline. You can see the weather conditions in Barcelona at the top of the site, as well as the remaining energy in the battery, which serves as a backup energy supply. (4)
Demand shifting
At times when the proportion of green energy is lower than the proportion of grey energy, consider whether you can adapt your activities in a way that changes your power consumption. You can do so in two ways: by relocating your activities to another geographical location, and or changing the time when you perform your activities. The two options are explained below.
Geographical location
Carbon intensity varies per region. Through organisations like ElectricityMaps and WattTime (5) you can discover in which of the world’s regions the proportion of green energy is highest. You can then choose to not perform your computer activities locally but in another geographical location. For instance, during the night, when no solar energy is available locally, you can have your activities performed by a data centre that runs on green energy in a place where the sun is shining at that moment.
You can also apply this principle of geographical location when training or running artificial intelligence. If you want to do so during the dark winter months, consider doing so in a data centre located in a region where solar energy is amply available.
Time of the day
If it isn’t an option for you to shift activities to another geographical location, then see whether you can perform the computer work at another time of the day. It might be sunnier later in the day, or there might be more wind during the night, both of which reduce the carbon intensity of the electricity you use. Reliable weather forecasts make it possible to incorporate these factors when scheduling your activities.
Major tech companies, such as Google with its Carbon Aware Datacenters, apply CO2 awareness. Google has developed various models to predict the carbon intensity and work burden of the coming day. This allows them to carry out massive tasks at a time when carbon intensity is at its lowest, without adversely affecting production. Microsoft applies a comparable approach for the sustainability of Windows 11, scheduling updates at hours when carbon intensity is minimal.
The Green Software Foundation is developing a handy tool: the Carbon Aware SDK. (6) This tool lets you develop software that runs at locations with the highest amount of green energy.
Demand shaping: aligning the demand with the supply
When shifting geographically or temporally, you align the demand with the energy supply. But you can also do it the other way around, by aligning the demand with the carbon intensity (the supply). In this case, you increase the demand by performing more activities at a time when carbon intensity is low, while performing less activities at times when the carbon intensity is high.
The eco-mode, which we are familiar with in cars and laundry machines, can be switched on when the carbon intensity is high. At that moment, you sacrifice part of the performance in order to consume less resources. For instance, when the full website bandwidth is utilised, the visitor to your website cannot view certain photographs.
Another example taken from daily practice is the automatic adjustment of the streaming quality in video conferencing software. Instead of constantly streaming at the highest possible quality (resolution), the software adjusts the video quality, giving priority to the audio. This happens when the bandwidth is low due to lots of people using the internet simultaneously.
Aiming for simplicity
Demand shaping is related to a broader sustainability concept, namely reducing consumption. Although there is much we can achieve by treating energy sources with more awareness, at a certain point it is our responsibility to actually cut down on (energy) consumption.
It is also important to manage end users’ expectations. Do you really need an explanatory video on your website, or would a written or spoken instruction with less CO2 impact suffice? Must every web page contain a high-res image, or could you make do with a lighter image or even no image at all? We will address these user’s dilemmas more extensively in the last blog series of this Green IT series.
Using code that is as clean as possible
Aiming for simplicity applies in particular for software code. Software programming has changed significantly throughout the years, due to the increased speed of processors and the ever-increasing memory capacity, so that software developers can basically operate without restraints (7).
This situation today is very different to say ten or twenty years ago, when software programmers were forced to be very judicious in their programming to prevent their software from becoming too heavy, and thereby adversely impacting the user experience (slow to load, slow to respond, etc.). Although these limitations posed a challenge, they did force programmers to write their code as carefully as possible, resulting in energy-efficient code.
With the countless methods of software programming available today, it is noticeable how much ‘sloppier’ it is often performed. This also relates to the pace at which software is developed. If programmers were to take more time for more precise programming, this would cut down on energy use. It is also no longer necessary to master a specific computer language. As a result, the used code is often ‘polluted’ with unnecessary elements, resulting in a unnecessarily higher use of energy.
An Archive of Awesome and Dark Tactics
Various initiatives have been launched by the software community to develop and share green code. For instance, researchers at the Vrije Universiteit Amsterdam launched the Archive of Awesome and Dark Tactics, which is an online archive for sustainable software development. The archive is freely accessible and based on open source principles. The goal is to inform, to inspire and to share best practices with everyone involved in the transition to digital sustainability. (8)
The Green Software Foundation also offers a catalogue on its website with software codes that help to reduce the carbon emission of software (specifically also with a link to artificial intelligence). (9)
Another valuable initiative is available on the Green Web Foundation website. They have developed tools to measure the emission of software; for example CO2.js, which is a script that lets you estimate the emission of apps, websites and software using a JavaScript library. They also offer Grid Intensity CLI, which lets you measure the carbon intensity of the software code you use. (10)
An energy label for software?
When reading this, it may seem to make sense to have an energy label for software products. That would enable users to choose the most energy-efficient product. Unfortunately, this is not feasible within the software sector. There are simply too many variables that influence a software’s energy use, other than purely the code. This is what we learned from Bernard van Gastel, university lecturer on sustainable digitalisation at Radboud University, in a webinar organised by the association of ICT professionals, KNVI. (10)
How much energy software uses depends too much on how the software is used, and people use their computers in very different ways. Bernard says he wouldn’t know how to design an energy label for Word or Excel. Even for refrigerators we find as many as seven different labels, since the energy consumption of an American fridge is different to that of a compact refrigerator.
Compared to refrigerators, software is so generic that it is impossible to assign an energy label to it. If you wanted to do so, then you would need to specifically examine how the user uses the software (software is sometimes developed with one goal in mind but then is used by users for a very different goal), how intensively it is used, and on which hardware the software is run. So you also need to examine your specific situation in order to reduce your software’s energy use.
Conclusion
In this blog we have seen that reducing CO2 emission is closely tied to considering the electricity supply. [5] If the supply consists more of grey than green energy, then you can choose to shift your demand, either by relocating your workload to another geographical location or by performing it during another part of the day.
Another option is to adjust the demand to the supply of green energy at that specific point in time, which is called ‘demand shaping’. For example, in a situation where the demand is high you can reduce the quality of your video conference, so that it uses less energy than in situations where there is less demand.
Finally, we have seen that you can achieve a significant drop in CO2 emission by specifically examining your software code, to see whether it contains any redundant code that unnecessarily increases the energy use. It is unfortunately not possible to assign energy labels to software, but you need to carefully examine your situation to identify room for improvement. In the next blog we will discuss the fourth principle of green software, which is hardware efficiency.
Sources
(1) Netherlands Statistics (CBS), ‘Aandeel hernieuwbare elektriciteit met 20% gestegen in 2022’, published on the CBS website on 6 March 2023.
(2) This explanation is based on the explanation offered in the Green Practitioner course of the Green Software Foundation.
(3) Nationalgrid, ‘What is carbon intensity?’.
(4) Kris De Decker’s website is accessible at https://solar.lowtechmagazine.com/. His LowTechMagazine newsletter is worthwhile for everyone interested in sustainability and the efficient use of electricity. The explanation regarding the operation and energy consumption of the solar-powered website of Low Tech Magazine is available at https://solar.lowtechmagazine.com/power/.
(5) ElectricityMaps, an app that shows you the climate impact of energy for various countries around the world. WattTime supplies electricity-related data to its partners via an API to achieve emission reductions, https://watttime.org/.
(6) The Carbon Aware SDK is available at Github: https://github.com/Green-Software-Foundation/carbon-aware-sdk.
(7) Pang, C. et al., ‘What do programmers know about the energy consumption of software?’, available via Reserachgate. Last visited on 12 December 2023.
(8) Vrije Universiteit Amsterdam, ‘Open Archief voor groene software om transitie te versnellen’ published on the VU website on 29 August 2022. The archive itself can be accessed via https://s2group.cs.vu.nl/AwesomeAndDarkTactics/.
About the blog series on Green IT This blog series aims to familiarise heritage institutions with the subject of Green IT, making it easier to discuss this important topic within the organisation. The next blog first takes a closer look at CO2 emission and its impact, and then applies the issue to the heritage sector. This series was written by Tineke van Heijst, green tech watcher of the Green IT network group set up by the Dutch Digital Heritage Network (Netwerk Digitaal Erfgoed, NDE). This network group monitors developments regarding Green IT and the impact of the increasing digitalisation on the climate. The group specifically studies the (increasing) digitalisation within the heritage sector. Previously published in this blog series: Introduction into Green IT IT’s double role in sustainability - KIA community The need for a sustainability framework for the heritage sector - KIA community Data Storage The digital databerg - KIA community The hidden impact of cloud storage - KIA community To store 1% of the world’s data: what does that cost in terms of CO2 emission? - KIA community The quest for sustainable alternatives to disks and tapes - KIA community Data storage in synthetic DNA: coding and decoding in secret code - KIA community Data storage in atoms: science fiction or future reality? - KIA community Data storage in glass: Superman has already been immortalised - KIA community Green software Green software: less energy = less CO2 emission - KIA community Green software: Do more when the electricity is cleaner - KIA community |
(9) The ‘Green Software Patterns’ catalogue is available at https://patterns.greensoftware.foundation/.
(10) CO2.js and Grid Intensity CLI are available at: https://www.thegreenwebfoundation.org/tools/#carbon-metrics.
(11) The webinar ‘Super Tuesday: Green IT’, where Bernard van Gastel was a guest on 7 November 2023, can be viewed at https://www.knvi.nl/kenniscentrum-artikel/2023/11/09/Terugkijken-KNVI-Super-Tuesday-7-november-2023-Green-IT.