BIBLIOS

  Sistema de Gestão de Referências Bibliográficas de Ciências

Modo Visitante (Login)
Need help?


Voltar

Detalhes Referência

Tipo
Artigos em Revista

Tipo de Documento
Artigo Completo

Título
Improving energy-efficiency by recommending Java collections

Participantes na publicação
Wellington Oliveira (Author)
FACULDADE DE CIÊNCIAS DA UNIVERSIDADE DE LISBOA
Dep. Informática
LASIGE
Renato Oliveira (Author)
UNIVERSIDADE FEDERAL DE PERNAMBUCO
Fernando Castor (Author)
UNIVERSIDADE DE UTRECHT
Gustavo Pinto (Author)
UNIVERSIDADE FEDERAL DO PARÁ
João Paulo Fernandes (Author)
UNIVERSIDADE DO PORTO

Resumo
Over the last years, increasing attention has been given to creating energy-efficient software systems. However, developers still lack the knowledge and the tools to support them in that task. In this work, we explore our vision that non-specialists can build software that consumes less energy by alternating diversely-designed pieces of software without increasing the development complexity. To support our vision, we propose an approach for energy-aware development that combines the construction of application-independent energy profiles of Java collections and static analysis to produce an estimate of in which ways and how intensively a system employs these collections. We implement this approach in a tool named CT+ that works with both desktop and mobile Java systems and is capable of analyzing 39 different collection implementations of lists, maps, and sets. We applied CT+ to seventeen software systems: two mobile-based, twelve desktop-based, and three that can run in both environments. Our evaluation infrastructure involved a high-end server, two notebooks, three smartphones, and a tablet. Overall, 2295 recommendations were applied, achieving up to 16.34% reduction in energy consumption, usually changing a single line of code per recommendation. Even for a real-world, mature system such as Tomcat, CT+ could achieve a 4.12% reduction in energy consumption. Our results indicate that some widely used collections, e.g., ArrayList, HashMap, and Hashtable, are not energy- efficient and sometimes should be avoided when energy consumption is a major concern.

Data de Submissão/Pedido
2020-05-16
Data de Aceitação
2022-02-04
Data de Publicação
2021-04-12

Instituição
UNIVERSIDADE FEDERAL DE PERNAMBUCO

Suporte
Empirical Software Engineering

Identificadores da Publicação
ISSN - 1382-3256

Editora
Springer Science and Business Media LLC

Volume
26
Fascículo
3

Identificadores do Documento
DOI - https://doi.org/10.1007/s10664-021-09950-y
URL - http://dx.doi.org/10.1007/s10664-021-09950-y

Identificadores de Qualidade
Web Of Science Q2 (2020) - 2.522 - COMPUTER SCIENCE, SOFTWARE ENGINEERING - SCIE


Exportar referência

APA
Wellington Oliveira, Renato Oliveira, Fernando Castor, Gustavo Pinto, João Paulo Fernandes, (2021). Improving energy-efficiency by recommending Java collections. Empirical Software Engineering, 26, ISSN 1382-3256. eISSN . http://dx.doi.org/10.1007/s10664-021-09950-y

IEEE
Wellington Oliveira, Renato Oliveira, Fernando Castor, Gustavo Pinto, João Paulo Fernandes, "Improving energy-efficiency by recommending Java collections" in Empirical Software Engineering, vol. 26, 2021. 10.1007/s10664-021-09950-y

BIBTEX
@article{52233, author = {Wellington Oliveira and Renato Oliveira and Fernando Castor and Gustavo Pinto and João Paulo Fernandes}, title = {Improving energy-efficiency by recommending Java collections}, journal = {Empirical Software Engineering}, year = 2021, volume = 26 }