SPELLing out energy leaks: Aiding developers locate energy inefficient code

Bibliographic Details
Main Author: Carcao,T
Publication Date: 2020
Other Authors: João Alexandre Saraiva, João Paulo Fernandes, Cunha,J, Rui Alexandre Pereira, Marco Linhares Couto
Format: Other
Language: eng
Source: Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
Download full: http://repositorio.inesctec.pt/handle/123456789/11245
http://dx.doi.org/10.1016/j.jss.2019.110463
Summary: Although hardware is generally seen as the main culprit for a computer's energy usage, software too has a tremendous impact on the energy spent. Unfortunately, there is still not enough support for software developers so they can make their code more energy-aware. This paper proposes a technique to detect energy inefficient fragments in the source code of a software system. Test cases are executed to obtain energy consumption measurements, and a statistical method, based on spectrum-based fault localization, is introduced to relate energy consumption to the source code. The result of our technique is an energy ranking of source code fragments pointing developers to possible energy leaks in their code. This technique was implemented in the SPELL toolkit. Finally, in order to evaluate our technique, we conducted an empirical study where we asked participants to optimize the energy efficiency of a software system using our tool, while also having two other groups using no tool assistance and a profiler, respectively. We showed statistical evidence that developers using our technique were able to improve the energy efficiency by 43% on average, and even out performing a profiler for energy optimization. © 2019 Elsevier Inc.
id RCAP_3eef51b5f30eccf7f693169eaee299a9
oai_identifier_str oai:repositorio.inesctec.pt:123456789/11245
network_acronym_str RCAP
network_name_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository_id_str https://opendoar.ac.uk/repository/7160
spelling SPELLing out energy leaks: Aiding developers locate energy inefficient codeAlthough hardware is generally seen as the main culprit for a computer's energy usage, software too has a tremendous impact on the energy spent. Unfortunately, there is still not enough support for software developers so they can make their code more energy-aware. This paper proposes a technique to detect energy inefficient fragments in the source code of a software system. Test cases are executed to obtain energy consumption measurements, and a statistical method, based on spectrum-based fault localization, is introduced to relate energy consumption to the source code. The result of our technique is an energy ranking of source code fragments pointing developers to possible energy leaks in their code. This technique was implemented in the SPELL toolkit. Finally, in order to evaluate our technique, we conducted an empirical study where we asked participants to optimize the energy efficiency of a software system using our tool, while also having two other groups using no tool assistance and a profiler, respectively. We showed statistical evidence that developers using our technique were able to improve the energy efficiency by 43% on average, and even out performing a profiler for energy optimization. © 2019 Elsevier Inc.2020-06-16T15:36:16Z2020-01-01T00:00:00Z2020info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/otherapplication/pdfhttp://repositorio.inesctec.pt/handle/123456789/11245http://dx.doi.org/10.1016/j.jss.2019.110463engCarcao,TJoão Alexandre SaraivaJoão Paulo FernandesCunha,JRui Alexandre PereiraMarco Linhares Coutoinfo:eu-repo/semantics/openAccessreponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiainstacron:RCAAP2024-10-12T02:22:31Zoai:repositorio.inesctec.pt:123456789/11245Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-28T18:58:18.018861Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiafalse
dc.title.none.fl_str_mv SPELLing out energy leaks: Aiding developers locate energy inefficient code
title SPELLing out energy leaks: Aiding developers locate energy inefficient code
spellingShingle SPELLing out energy leaks: Aiding developers locate energy inefficient code
Carcao,T
title_short SPELLing out energy leaks: Aiding developers locate energy inefficient code
title_full SPELLing out energy leaks: Aiding developers locate energy inefficient code
title_fullStr SPELLing out energy leaks: Aiding developers locate energy inefficient code
title_full_unstemmed SPELLing out energy leaks: Aiding developers locate energy inefficient code
title_sort SPELLing out energy leaks: Aiding developers locate energy inefficient code
author Carcao,T
author_facet Carcao,T
João Alexandre Saraiva
João Paulo Fernandes
Cunha,J
Rui Alexandre Pereira
Marco Linhares Couto
author_role author
author2 João Alexandre Saraiva
João Paulo Fernandes
Cunha,J
Rui Alexandre Pereira
Marco Linhares Couto
author2_role author
author
author
author
author
dc.contributor.author.fl_str_mv Carcao,T
João Alexandre Saraiva
João Paulo Fernandes
Cunha,J
Rui Alexandre Pereira
Marco Linhares Couto
description Although hardware is generally seen as the main culprit for a computer's energy usage, software too has a tremendous impact on the energy spent. Unfortunately, there is still not enough support for software developers so they can make their code more energy-aware. This paper proposes a technique to detect energy inefficient fragments in the source code of a software system. Test cases are executed to obtain energy consumption measurements, and a statistical method, based on spectrum-based fault localization, is introduced to relate energy consumption to the source code. The result of our technique is an energy ranking of source code fragments pointing developers to possible energy leaks in their code. This technique was implemented in the SPELL toolkit. Finally, in order to evaluate our technique, we conducted an empirical study where we asked participants to optimize the energy efficiency of a software system using our tool, while also having two other groups using no tool assistance and a profiler, respectively. We showed statistical evidence that developers using our technique were able to improve the energy efficiency by 43% on average, and even out performing a profiler for energy optimization. © 2019 Elsevier Inc.
publishDate 2020
dc.date.none.fl_str_mv 2020-06-16T15:36:16Z
2020-01-01T00:00:00Z
2020
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/other
format other
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://repositorio.inesctec.pt/handle/123456789/11245
http://dx.doi.org/10.1016/j.jss.2019.110463
url http://repositorio.inesctec.pt/handle/123456789/11245
http://dx.doi.org/10.1016/j.jss.2019.110463
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron:RCAAP
instname_str FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron_str RCAAP
institution RCAAP
reponame_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
collection Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository.name.fl_str_mv Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
repository.mail.fl_str_mv info@rcaap.pt
_version_ 1833597789852925952