What are your Programming Language’s Energy-Delay Implications?

Stefanos Georgiou, Maria Kechagia, Panos Louridas, D. Spinellis

Research output: Chapter in Book/Conference proceedings/Edited volumeConference contributionScientificpeer-review

11 Citations (Scopus)
50 Downloads (Pure)

Abstract

Motivation: Even though many studies examine the energy efficiency of hardware and embedded systems, those that investigate the energy consumption of software applications are still limited, and mostly focused on mobile applications. As modern applications become even more complex and heterogeneous a need arises for methods that can accurately assess their energy consumption.

Goal: Measure the energy consumption and run-time performance of commonly used programming tasks implemented in different programming languages and executed on a variety of platforms to help developers to choose appropriate implementation platforms.

Method: Obtain measurements to calculate the Energy Delay Product, a weighted function that takes into account a task’s energy consumption and run-time performance. We perform our tests by calculating the Energy Delay Product of 25 programming tasks, found in the Rosetta Code Repository, which are implemented in 14 programming languages and run on three different computer platforms, a server, a laptop, and an embedded system.

Results: Compiled programming languages are outperforming the interpreted ones for most, but not for all tasks. C, C#, and JavaScript are on average the best performing compiled, semi-compiled, and interpreted programming languages for the Energy Delay Product, and Rust appears to be well-placed for i/o-intensive operations, such as file handling. We also find that a good behaviour, energywise, can be the result of clever optimizations and design choices in seemingly unexpected programming languages.
Original languageEnglish
Title of host publicationMRS'18 Proceedings of the 15th International Conference on Mining Software Repositories
Place of PublicationNew York, NY
PublisherAssociation for Computing Machinery (ACM)
Pages303-313
Number of pages11
ISBN (Print)978-1-4503-5716-6
DOIs
Publication statusPublished - 2018
EventMSR 2018: 15th International Conference on Mining Software Repositories - Gothia Towers, Gothenburg, Sweden
Duration: 28 May 201829 May 2018
Conference number: 15
https://2018.msrconf.org/

Conference

ConferenceMSR 2018: 15th International Conference on Mining Software Repositories
Abbreviated titleMSR
Country/TerritorySweden
CityGothenburg
Period28/05/1829/05/18
Internet address

Bibliographical note

Accepted author manuscript

Keywords

  • Programming Languages
  • Energy-Delay-Product
  • Energy-Efficiency

Fingerprint

Dive into the research topics of 'What are your Programming Language’s Energy-Delay Implications?'. Together they form a unique fingerprint.

Cite this