How Green is My Code: Energy use and software services – Et forstudie
| Projekttitel | How Green is My Code: Energy use and software services – Et forstudie |
|---|---|
| Projekttype | Anvendt forskning og udvikling |
| Frascati | Ja |
| Tema | Bæredygtighed | IT | Miljø |
| Teaser | The power consumption of cloud computing is a problem. We will create a framework to score both self-hosted and cloud-based software applications on energy use. |
| Status | Igangværende |
| Ejer | |
| - Akademi | Cphbusiness |
| - Kontaktperson | Steven Albury Lektor ste@cphbusiness.dk 41332748 |
| Nat./Int. | Nationalt |
| Projektperiode | 01. januar 2025 - 01. juli 2025 |
| Projektbeskrivelse | |
| - Projektresumé | Our research will build on work done by Kempen et al (2024) on the importance of programming language and application implementation and on the importance of measuring energy use. The pre-print of their work is available here: https://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 led by Steven and Steffen but most of the work writing and testing code will be done by students who will do the work as part of a project in their course on studying research methods. This course is taken by both WEB and SOFT students. It will give them a chance to learn about running controlled experiments, analyzing data and reporting findings. Steven and Steffen will be assisted in this by 2 volunteer students who will act as assistants. If this pilot project demonstrates promise as an approach it may then be taken into industry to work with companies interested in exploring their own energy profile and working to make it more efficient.
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;
These benefits can also apply to the educations in Multimedia Design, Web Development and Datamatikker where sustainable software is also an important area of consideration. If this pilot research leads to the creation of a process for testing and measuring software development stacks (things such as programming languages and databases) as part of student projects, it can be taken forward as an FoU project whose outcome would be beneficial to Danish society in a number of important ways:
|
| - Baggrund og formål | |
| - Aktiviteter og handling | |
| - Projektets Metode | The project will adopt a pragmatic approach in line with theories of information systems research (e.g. Nunamaker 1990). This means the research will be a combination of experimental design based research (as suggested by e.g. Pereira 2021) and software systems ethnographic techniques (Myers 1999, Sharp, Dittrich Experiments will apply techniques such as Queue Theory to monitor and measure latency and cpu activity, memory use and power consumption over time. There will be a baseline implementation of a software problem which will then be implemented using different languages, services and cloud providers. This data The experiments will provide the data that can be used to inform the design of larger scale and longer running experiments as part of the anticipated FoU project. Ethnographic techniques will be used to improve understanding of how technology stacks are selected and the way architecture and software design decisions are made in organisations. This data will help improve the materials developed to help people make informed choices about energy efficiency by connecting it to current working practices such as Scrum at Scale. |
| - Projektets Forventede Resultater | Forventningen er at kunne blive i stand til at vurdere og måle energieffektiviteten i forskellige computing milijø’er, inklusiv af cloud milljø’er som Amazon Web Services eller Microsoft Azure. |
| - Projektets Forventede Effekt | |
| Tags | |
| Deltagere | |
| - Studerende | |
| - Medarbejdere | Cphbusiness Steffen Segovia HelboSteven William Albury |
| - Virksomhedsrepræsentanter | |
| - Andre | |
| Partnere | |
| Finansiering | |
| - Intern | 100% |
| - Ekstern | |
| Resultat | |
| Evaluering | |
| Formidlingsform | |
| - Resultatets formidling | |
| - Resultaternes værdi | |
| - Målgruppen | |
| - Publikationer |