Hop til indhold

How Green is My Code: Energy use and software services, E25 – Et forstudie

Videndeling med virksomheder i en workshop E2025 og præsentation af metode, der fremmer grønnere valg i cloud computing-miljøer.

Our research will build on work done by Kempen et al (2024) on the importance of programming language and application implementation on the importance of measuring energy use. The pre-print of their work is available here: hQps://arxiv.org/html/2410.05460v1 and the abstract is below.:

“Does the choice of programming language affect energy consumption? Previous highly visible studies have established associations between certain programming languages and energy consumption. A causal misinterpretation of this work has led academics and industry leaders to use or support certain languages based on their claimed impact on energy consumption. This paper tackles this causal question directly. It first corrects and improves the measurement methodology used by prior work. It then develops a detailed causal model capturing the complex relationship between programming language choice and energy consumption. This model identifies and incorporates several critical but previously overlooked factors that affect energy usage. These factors, such as distinguishing programming languages from their implementations, the impact of the application implementations themselves, the number of active cores, and memory activity, can significantly skew energy consumption measurements if not accounted for. We show—via empirical experiments, improved methodology, and careful examination of anomalies—that when these factors are controlled for, notable discrepancies in prior work vanish. Our analysis suggests that the choice of programming language implementation has no significant impact on energy consumption beyond execution time.”

We have some data collected by Steffen Segovia Helbo exploring energy use of programming languages and local systems and want to extend and build on this with more detailed experiments that study the energy impact in particular of long running applications – in order to test the results of both those like Shane Miller who stress language selection (e.g. In her talk at the Amazon Web Services Reinvent Conference 2023) and Kempen who stress implementation (which version of the language, and the software design of the application).

The experiments will be lead by Steven and Steffen with help from some student volunteers. It will give them a chance to learn about running controlled experiments, analysing data and reporting findings. It will then be taken into industry to work with companies interested in exploring their own energy profile and working to make it more efficient. At the moment we have shared the idea for this project to companies (for example Microsoft, KMD, Visma, IBM) who may benefit from it but no systematic search for partners has yet been undertaken. However we intend in the Autumn of 2025 to hold a 1 day workshop with a guest speaker who is Denmark’s leading researcher in this area (from Aarhus University). The workshop will also include a presentation of our findings.

However we feel that there are significant benefits to companies of understanding energy use of their technology stack if we can provide them with a set of processes and measuring tools so that it can form part of their platform engineering / continuous delivery system and be a part of the Business as Usual quality work they do.

There is a need for more research at the individual application design and development level, as most current research focuses on the Data Centre level so that cloud providers like Amazon can comply with the EU Energy Efficiency Directive (EU/23/1791). However, students developing software applications need more knowledge of the regulatory impacts that their choice of technologies may have and there is a lack of research exploring energy use and application design in the Danish context. This is especially important in teaching new professionals how to assess their choices from this angle. This is influenced by work such as Mehul Warade et al’s (2023) on Docker Containers – a special software tool that allows one computer to run many different applications separately and using their own virtual processers and memory. Warade’s team adopted a practical approach testing realistic scenarios of application implementation using well defined experiments. We think this is a valuable methodology for our work as it will benefit the software development education in a number of ways;

  • Helps developers understand low level efficiency in software to improve their code in terms of performance and resource use.
  • Helps IT departments make decisions around technology selection and implementation
  • Helps them to deepen their understanding of technically complex measurement problems in software development as part of software quality systems activity.
  • Supports efforts to improve developers’ understanding and abilities in sustainable software development.

This pilot research is intended to lead to the creation of a process for testing and measuring socware development stacks (things such as programming languages and databases) as part of systems development work. It would be beneficial to Danish society in a number of important ways:

  • Raising the visibility of the energy use of software – a key driver of increased energy demand in developed countries – the International Energy Agency predicts a doubling in demand directly connected to software use but there is a low level of awareness in society generally about how their digital life contributes to energy demand and climate change.
  • Giving IT departments a deeper understanding of ‘green coding’ and how to make it part of their thinking when developing software. This will benefit Danish companies by keeping them at the forefront of good practice as part of corporate sustainability work.
  • As a country with a strong digitalization record Denmark can participate in shaping new standards and practices to help guide software development in a more sustainable direction. This research can feed into work on creating standards and practices for use by both state and private bodies (for example developing processes to help companies with ISO 50001 certification ).

Vælg et tema eller søg efter projekter