SPELLing out energy leaks: Aiding developers locate energy inefficient code
Main Author: | |
---|---|
Publication Date: | 2020 |
Other Authors: | , , , , |
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 |