Analyzing programming languages' energy consumption: An empirical study

Stefanos Georgiou, Maria Kechagia, Diomidis Spinellis

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

Abstract

Motivation: The energy efficiency of it-related products, from the software perspective, has gained vast popularity the recent years and paved a new emerging research field. However, there is limited number of research works regarding the energy consumption of relatively small programming tasks. This knowledge is critical to be known especially in cases where millions of small tasks are running in parallel on multiple devices all around the globe. Goal: In this preliminary study, we aim to identify energy implications of small, independent tasks developed in different programming languages; compiled, semi-compiled, and interpreted ones. Method: To achieve our purpose, we collected, refined, compared, and analyzed a number of implemented tasks from Rosetta Code, that is a publicly available Repository for programming chrestomathy. Results: Our analysis shows that among compiled programming languages such as C, C++, Java, and Go offer the highest energy efficiency for all of our tested tasks compared to C#, vb.net, and Rust. Regarding interpreted programming languages php, Ruby, and JavaScript exhibit the most energy savings compared to Swift, R, Perl, and Python.

Original languageEnglish
Title of host publicationPCI 2017
Subtitle of host publicationProceedings of the 21st Pan-Hellenic Conference on Informatics
Place of PublicationNew York
PublisherAssociation for Computing Machinery (ACM)
Pages1-6
Number of pages6
ISBN (Print)978-1-4503-5355-7
DOIs
Publication statusPublished - 2017
Event21st Pan-Hellenic Conference on Informatics, PCI 2017 - Larissa, Greece
Duration: 28 Sep 201730 Sep 2017

Conference

Conference21st Pan-Hellenic Conference on Informatics, PCI 2017
CountryGreece
CityLarissa
Period28/09/1730/09/17

Keywords

  • Energy Efficiency
  • Energy Optimization
  • Programming Languages

Fingerprint Dive into the research topics of 'Analyzing programming languages' energy consumption: An empirical study'. Together they form a unique fingerprint.

Cite this