Products go green

Worst-case energy consumption in so-ware product lines

Marco Couto, Paulo Borba, Jácome Cunha, João Paulo Fernandes, Rui Pereira, João Saraiva

Research output: Chapter in Book/Report/Conference proceedingConference contribution

3 Citations (Scopus)

Abstract

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.

Original languageEnglish
Title of host publicationSPLC 2017 - 21st International Systems and Software Product Line Conference, Proceedings
PublisherAssociation for Computing Machinery
Pages84-93
Number of pages10
Volume1
ISBN (Electronic)978-1-4503-5221-5
DOIs
Publication statusPublished - 25 Sep 2017
Event21st International Systems and Software Product Line Conference, SPLC 2017 - Sevilla, Spain
Duration: 25 Sep 201729 Sep 2017

Conference

Conference21st International Systems and Software Product Line Conference, SPLC 2017
CountrySpain
CitySevilla
Period25/09/1729/09/17

Fingerprint

Energy utilization
Image processing
Industry
Experiments

Keywords

  • Software and its engineering
  • Automated static analysis
  • Software performance
  • Software product lines

Cite this

Couto, M., Borba, P., Cunha, J., Fernandes, J. P., Pereira, R., & Saraiva, J. (2017). Products go green: Worst-case energy consumption in so-ware product lines. In SPLC 2017 - 21st International Systems and Software Product Line Conference, Proceedings (Vol. 1, pp. 84-93). Association for Computing Machinery. https://doi.org/10.1145/3106195.3106214
Couto, Marco ; Borba, Paulo ; Cunha, Jácome ; Fernandes, João Paulo ; Pereira, Rui ; Saraiva, João. / Products go green : Worst-case energy consumption in so-ware product lines. SPLC 2017 - 21st International Systems and Software Product Line Conference, Proceedings. Vol. 1 Association for Computing Machinery, 2017. pp. 84-93
@inproceedings{69bb4775ea6f425782d346dd78cf2492,
title = "Products go green: Worst-case energy consumption in so-ware product lines",
abstract = "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.",
keywords = "Software and its engineering, Automated static analysis, Software performance, Software product lines",
author = "Marco Couto and Paulo Borba and J{\'a}come Cunha and Fernandes, {Jo{\~a}o Paulo} and Rui Pereira and Jo{\~a}o Saraiva",
note = "Portuguese funding agency, FCT - Fundacao para a Ciencia e a Tecnologia - POCI-01-0145-FEDER-016718 ; FLAD/NSF - 278/2016",
year = "2017",
month = "9",
day = "25",
doi = "10.1145/3106195.3106214",
language = "English",
volume = "1",
pages = "84--93",
booktitle = "SPLC 2017 - 21st International Systems and Software Product Line Conference, Proceedings",
publisher = "Association for Computing Machinery",

}

Couto, M, Borba, P, Cunha, J, Fernandes, JP, Pereira, R & Saraiva, J 2017, Products go green: Worst-case energy consumption in so-ware product lines. in SPLC 2017 - 21st International Systems and Software Product Line Conference, Proceedings. vol. 1, Association for Computing Machinery, pp. 84-93, 21st International Systems and Software Product Line Conference, SPLC 2017, Sevilla, Spain, 25/09/17. https://doi.org/10.1145/3106195.3106214

Products go green : Worst-case energy consumption in so-ware product lines. / Couto, Marco; Borba, Paulo; Cunha, Jácome; Fernandes, João Paulo; Pereira, Rui; Saraiva, João.

SPLC 2017 - 21st International Systems and Software Product Line Conference, Proceedings. Vol. 1 Association for Computing Machinery, 2017. p. 84-93.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

TY - GEN

T1 - Products go green

T2 - 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 - Portuguese funding agency, FCT - Fundacao para a Ciencia e a Tecnologia - POCI-01-0145-FEDER-016718 ; FLAD/NSF - 278/2016

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.

KW - Software and its engineering

KW - Automated static analysis

KW - Software performance

KW - Software product lines

UR - http://www.scopus.com/inward/record.url?scp=85032269775&partnerID=8YFLogxK

U2 - 10.1145/3106195.3106214

DO - 10.1145/3106195.3106214

M3 - Conference contribution

VL - 1

SP - 84

EP - 93

BT - SPLC 2017 - 21st International Systems and Software Product Line Conference, Proceedings

PB - Association for Computing Machinery

ER -

Couto M, Borba P, Cunha J, Fernandes JP, Pereira R, Saraiva J. Products go green: Worst-case energy consumption in so-ware product lines. In SPLC 2017 - 21st International Systems and Software Product Line Conference, Proceedings. Vol. 1. Association for Computing Machinery. 2017. p. 84-93 https://doi.org/10.1145/3106195.3106214