[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1109/ICSE-C.2017.80acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Helping programmers improve the energy efficiency of source code

Published: 20 May 2017 Publication History

Abstract

This paper briefly 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 system's source code. The result of our technique is an energy ranking of source code fragments pointing developers to possible energy leaks in their code.

References

[1]
C. Becker, R. Chitchyan, L. Duboc, S. Easterbrook, M. Mahaux, B. Penzenstadler, G. Rodríguez-Navas, C. Salinesi, N. Seyff, C. C. Venters, C. Calero, S. A. Koçak, and S. Betz, "The karlskrona manifesto for sustainability design," CoRR, vol. abs/1410.6968, 2014.
[2]
G. Pinto, F. Castor, and Y. D. Liu, "Mining questions about software energy consumption," in Proceedings of the 11th Working Conference on Mining Software Repositories. ACM, 2014, pp. 22--31.
[3]
M. A. Ferreira, E. Hoekstra, B. Merkus, B. Visser, and J. Visser, "Seflab: A lab for measuring software energy footprints," in Green and Sustainable Software (GREENS), 2013 2nd International Workshop on. IEEE, 2013, pp. 30--37.
[4]
G. Pinto, F. Castor, and Y. D. Liu, "Understanding energy behaviors of thread management constructs," in Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications. ACM, 2014, pp. 345--360.
[5]
T. Yuki and S. Rajopadhye, "Folklore confirmed: Compiling for speed=compiling for energy," in Languages and Compilers for Parallel Computing. Springer, 2014, pp. 169--184.
[6]
M. Linares-Vásquez, G. Bavota, C. Bernal-Cárdenas, R. Oliveto, M. Di Penta, and D. Poshyvanyk, "Mining energy-greedy api usage patterns in android apps: an empirical study," in Proceedings of the 11th Working Conference on Mining Software Repositories. ACM, 2014, pp. 2--11.
[7]
C. Sahin, L. Pollock, and J. Clause, "How do code refactorings affect energy usage?" in Proceedings of the 8th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement. ACM, 2014, p. 36.
[8]
C. Sahin, P. Tornquist, R. McKenna, Z. Pearson, and J. Clause, "How does code obfuscation impact energy usage?" in Software Maintenance (ICSM), 2013 29th IEEE International Conference on. IEEE, 2014.
[9]
M. Couto, T. Carção, J. Cunha, J. P. Fernandes, and J. Saraiva, Programming Languages: 18th Brazilian Symposium, SBLP 2014, Maceio, Brazil, October 2--3, 2014. Proceedings. Cham: Springer International Publishing, 2014, ch. Detecting Anomalous Energy Consumption in Android Applications, pp. 77--91. {Online}. Available
[10]
I. Manotas, L. Pollock, and J. Clause, "Seeds: A software engineer's energy-optimization decision support framework," in Proceedings of the 36th International Conference on Software Engineering. ACM, 2014.
[11]
A. Hindle, "Green mining: a methodology of relating software change and configuration to power consumption," Empirical Software Engineering, vol. 20, no. 2, pp. 374--409, 2015. {Online}. Available
[12]
S. Li and S. Mishra, "Optimizing power consumption in multicore smartphones," Journal of Parallel and Distributed Computing, pp. -, 2016. {Online}. Available: http://www.sciencedirect.com/science/article/pii/S0743731516000198
[13]
L. G. Lima, F. Soares-Neto, P. Lieuthier, F. Castor, G. Melfe, and J. P. Fernandes, "Haskell in green land: Analyzing the energy behavior of a purely functional language," in 2016 IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER), vol. 1, March 2016, pp. 517--528.
[14]
R. Pereira, M. Couto, J. a. Saraiva, J. Cunha, and J. a. P. Fernandes, "The influence of the java collection framework on overall energy consumption," in Proceedings of the 5th International Workshop on Green and Sustainable Software, ser. GREENS '16. New York, NY, USA: ACM, 2016, pp. 15--21. {Online}. Available
[15]
X. Ma, P. Huang, X. Jin, P. Wang, S. Park, D. Shen, Y. Zhou, L. K. Saul, and G. M. Voelker, "edoctor: Automatically diagnosing abnormal battery drain issues on smartphones," in Proceedings of the 10th USENIX Conference on Networked Systems Design and Implementation, ser. nsdi'13. Berkeley, CA, USA: USENIX Association, 2013, pp. 57--70. {Online}. Available: http://dl.acm.org/citation.cfm?id=2482626.2482634
[16]
A. E. Trefethen and J. Thiyagalingam, "Energy-aware software: Challenges, opportunities and strategies," Journal of Computational Science, vol. 4, no. 6, pp. 444 -- 449, 2013.
[17]
P. Lago, "Challenges and opportunities for sustainable software," in Proceedings of the Fifth International Workshop on Product LinE Approaches in Software Engineering, ser. PLEASE '15. Piscataway, NJ, USA: IEEE Press, 2015, pp. 1--2. {Online}. Available: http://dl.acm.org/citation.cfm?id=2820656.2820658
[18]
A. Hindle, "Green software engineering: the curse of methodology," PeerJ PrePrints, vol. 3, p. e1832, 2015.
[19]
R. Abreu, P. Zoeteweij, and A. J. C. V. Gemund, "Spectrum-based multiple fault localization," in Proc. of the 2009 IEEE/ACM Int. Conf. on Automated Software Engineering, ser. ASE '09. Washington, USA: IEEE Computer Society, 2009, pp. 88--99.
[20]
R. Abreu, P. Zoeteweij, and A. J. Van Gemund, "On the accuracy of spectrum-based fault localization," pp. 89--98, 2007.
[21]
S. Abdulsalam, Z. Zong, Q. Gu, and M. Qiu, "Using the greenup, powerup, and speedup metrics to evaluate software energy efficiency," in Green Computing Conference and Sustainable Computing Conference (IGSC), 2015 Sixth International. IEEE, 2015, pp. 1--8.
[22]
A. E. Trefethen and J. Thiyagalingam, "Energy-aware software: Challenges, opportunities and strategies," Journal of Computational Science, vol. 4, no. 6, pp. 444--449, 2013.
[23]
A. X. Zheng, M. I. Jordan, B. Liblit, and A. Aiken, "Statistical debugging of sampled programs," in Advances in Neural Information Processing Systems, 2003, p. None.
[24]
R. Real and J. M. Vargas, "The probabilistic basis of jaccard's index of similarity," Systematic biology, pp. 380--385, 1996.
[25]
K. Liu, G. Pinto, and Y. D. Liu, "Data-oriented characterization of application-level energy optimization," in Fundamental Approaches to Software Engineering. Springer, 2015, pp. 316--331.

Cited By

View all
  • (2021)Evaluating the Impact of Java Virtual Machines on Energy ConsumptionProceedings of the 15th ACM / IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)10.1145/3475716.3475774(1-11)Online publication date: 11-Oct-2021
  • (2021)Towards a Human Values Dashboard for Software DevelopmentProceedings of the 15th ACM / IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)10.1145/3475716.3475770(1-12)Online publication date: 11-Oct-2021
  • (2021)Bringing Green Software to Computer Science Curriculum: Perspectives from Researchers and EducatorsProceedings of the 26th ACM Conference on Innovation and Technology in Computer Science Education V. 110.1145/3430665.3456386(498-504)Online publication date: 26-Jun-2021
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE-C '17: Proceedings of the 39th International Conference on Software Engineering Companion
May 2017
558 pages
ISBN:9781538615898

Sponsors

Publisher

IEEE Press

Publication History

Published: 20 May 2017

Check for updates

Author Tags

  1. fault localization
  2. green computing
  3. program optimization

Qualifiers

  • Research-article

Conference

ICSE '17
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)6
  • Downloads (Last 6 weeks)2
Reflects downloads up to 21 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2021)Evaluating the Impact of Java Virtual Machines on Energy ConsumptionProceedings of the 15th ACM / IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)10.1145/3475716.3475774(1-11)Online publication date: 11-Oct-2021
  • (2021)Towards a Human Values Dashboard for Software DevelopmentProceedings of the 15th ACM / IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)10.1145/3475716.3475770(1-12)Online publication date: 11-Oct-2021
  • (2021)Bringing Green Software to Computer Science Curriculum: Perspectives from Researchers and EducatorsProceedings of the 26th ACM Conference on Innovation and Technology in Computer Science Education V. 110.1145/3430665.3456386(498-504)Online publication date: 26-Jun-2021
  • (2020)SPELLing out energy leaksJournal of Systems and Software10.1016/j.jss.2019.110463161:COnline publication date: 1-Mar-2020
  • (2018)Measuring the energy footprint of mobile testing frameworksProceedings of the 40th International Conference on Software Engineering: Companion Proceeedings10.1145/3183440.3195027(400-401)Online publication date: 27-May-2018
  • (2018)Towards Green Big Data at CERNFuture Generation Computer Systems10.1016/j.future.2017.11.00181:C(103-113)Online publication date: 1-Apr-2018
  • (2017)Energy efficiency across programming languages: how do energy, time, and memory relate?Proceedings of the 10th ACM SIGPLAN International Conference on Software Language Engineering10.1145/3136014.3136031(256-267)Online publication date: 23-Oct-2017
  • (2017)Towards a Green Ranking for Programming LanguagesProceedings of the 21st Brazilian Symposium on Programming Languages10.1145/3125374.3125382(1-8)Online publication date: 21-Sep-2017
  • (2017)Products go GreenProceedings of the 21st International Systems and Software Product Line Conference - Volume A10.1145/3106195.3106214(84-93)Online publication date: 25-Sep-2017
  • (2017)Locating energy hotspots in source codeProceedings of the 39th International Conference on Software Engineering Companion10.1109/ICSE-C.2017.151(88-90)Online publication date: 20-May-2017

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media