TY - GEN
T1 - Products go green:Worst-case energy consumption in so-ware product lines
AU - Couto, Marco
AU - Borba, Paulo
AU - Cunha, Jácome
AU - Fernandes, João Paulo
AU - Pereira, Rui
AU - Saraiva, João
N1 - Publisher Copyright:
© 2017 ACM.
PY - 2017/9/25
Y1 - 2017/9/25
N2 - The optimization of software to be (more) energy efficient is becoming a major concern for the software industry. Although several techniques have been presented to measure energy consumption for software, none has addressed software product lines (SPLs). Thus, to measure energy consumption of a SPL, the products must be generated and measured individually, which is too costly. In this paper, we present a technique and a prototype tool to statically estimate the worst case energy consumption for SPL. The goal is to provide developers with techniques and tools to reason about the energy consumption of all products in a SPL, without having to produce, run and measure the energy in all of them. Our technique combines static program analysis techniques and worst case execution time prediction with energy consumption analysis. This technique analyzes all products in a feature-sensitive manner, that is, a feature used in several products is analyzed only once, while the energy consumption is estimated once per product. We implemented our technique in a tool called Serapis. We did a preliminary evaluation using a product line for image processing implemented in C. Our experiments considered 7 products from such line and our initial results show that the tool was able to estimate the worst-case energy consumption with a mean error percentage of 9.4% and standard deviation of 6.2% when compared with the energy measured when running the products.
AB - The optimization of software to be (more) energy efficient is becoming a major concern for the software industry. Although several techniques have been presented to measure energy consumption for software, none has addressed software product lines (SPLs). Thus, to measure energy consumption of a SPL, the products must be generated and measured individually, which is too costly. In this paper, we present a technique and a prototype tool to statically estimate the worst case energy consumption for SPL. The goal is to provide developers with techniques and tools to reason about the energy consumption of all products in a SPL, without having to produce, run and measure the energy in all of them. Our technique combines static program analysis techniques and worst case execution time prediction with energy consumption analysis. This technique analyzes all products in a feature-sensitive manner, that is, a feature used in several products is analyzed only once, while the energy consumption is estimated once per product. We implemented our technique in a tool called Serapis. We did a preliminary evaluation using a product line for image processing implemented in C. Our experiments considered 7 products from such line and our initial results show that the tool was able to estimate the worst-case energy consumption with a mean error percentage of 9.4% and standard deviation of 6.2% when compared with the energy measured when running the products.
UR - http://www.scopus.com/inward/record.url?scp=85032269775&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85032269775&partnerID=8YFLogxK
U2 - 10.1145/3106195.3106214
DO - 10.1145/3106195.3106214
M3 - Conference contribution
AN - SCOPUS:85032269775
T3 - ACM International Conference Proceeding Series
SP - 84
EP - 93
BT - SPLC 2017 - 21st International Systems and Software Product Line Conference, Proceedings
A2 - Fuentes, Lidia
A2 - Bagheri, Ebrahim
A2 - Ruiz-Cortes, Antonio
A2 - Benavides, David
A2 - Capilla, Rafael
A2 - Xiong, Yingfei
A2 - Bosch, Jan
A2 - Acher, Mathieu
A2 - Schall, Daniel
A2 - Cohen, Myra
A2 - Troya, Javier
PB - Association for Computing Machinery
T2 - 21st International Systems and Software Product Line Conference, SPLC 2017
Y2 - 25 September 2017 through 29 September 2017
ER -