, Volume 100, Issue 11, pp 1155–1173 | Cite as

Finding correlations of features affecting energy consumption and performance of web servers using the HADAS eco-assistant

  • Daniel-Jesus MunozEmail author
  • Mónica Pinto
  • Lidia Fuentes


The impact of energy consumption on the environment and the economy is raising awareness of “green” software engineering. HADAS is an eco-assistant that makes developers aware of the influence of their designs and implementations on the energy consumption and performance of the final product. In this paper, we extend HADAS to better support the requirements of users: researchers, automatically dumping the energy-consumption of different software solutions; and developers, who want to perform a sustainability analysis of different software solutions. This analysis has been extended by adding Pearson’s chi-squared differentials and Bootstrapping statistics, to automatically check the significance of correlations of the energy consumption, or the execution time, with any other variable (e.g., the number of users) that can influence the selection of a particular eco-efficient configuration. We have evaluated our approach by performing a sustainability analysis of the most common web servers (i.e. PHP servers) using the time and energy data measured with the Watts Up? Pro tool previously dumped in HADAS. We show how HADAS helps web server providers to make a trade-off between energy consumption and execution time, allowing them to sell different server configurations with different costs without modifying the hardware.


Energy efficiency Performance Web servers Linux 

Mathematics Subject Classification

68U35 68N30 68M20 97K80 



Work funded by the projects MAGIC P12-TIC1814 and HADAS TIN2015-64841-R, and by the University of Malaga.


  1. 1.
    Antkiewicz M, Bąk K, Murashkin A, Olaechea R, Liang JHJ, Czarnecki K (2013) Clafer tools for product line engineering. In: Proceedings of the 17th international software product line conference co-located workshops, pp 130–135. ACMGoogle Scholar
  2. 2.
    Bertini L, Leite JC, Mosse D (2007) Statistical QoS guarantee and energy-efficiency in web server clusters. In: 19th Euromicro conference on real-time systems, 2007. ECRTS’07, pp 83–92. IEEEGoogle Scholar
  3. 3.
    Bianchini R, Rajamony R (2004) Power and energy management for server systems. Computer 37(11):68–76CrossRefGoogle Scholar
  4. 4.
    Brunnert A, Vögele C, Krcmar H (2013) Automatic performance model generation for java enterprise edition (ee) applications. In: European workshop on performance engineering, pp 74–88. SpringerGoogle Scholar
  5. 5.
    Cabeza LF, Palacios A, Serrano S, Ürge-Vorsatz D, Barreneche C (2018) Comparison of past projections of global and regional primary and final energy consumption with historical data. Renew Sustain Energy Rev 82:681–688CrossRefGoogle Scholar
  6. 6.
    Chowdhury SA, Hindle A (2016) Greenoracle: Estimating software energy consumption with energy measurement corpora. In: Proceedings of the 13th international conference on mining software repositories, pp 49–60. ACMGoogle Scholar
  7. 7.
    Chowdhury SA, Sapra V, Hindle A (2016) Client-side energy efficiency of HTTP/2 for web and mobile app developers. In: 2016 IEEE 23rd international conference on software analysis, evolution, and reengineering (SANER), vol 1, pp 529–540. IEEEGoogle Scholar
  8. 8.
    Djemame K, Armstrong D, Kavanagh R, Juan Ferrer A, Garcia Perez D, Antona D, Deprez JC, Ponsard C, Ortiz D, Macías Lloret M, et al. (2014) Energy efficiency embedded service lifecycle: towards an energy efficient cloud computing architecture. In: Joint workshop proceedings of the 2nd international conference on ICT for sustainability 2014, pp 1–6. CEUR-WS. orgGoogle Scholar
  9. 9.
    Feng F, Tuomi M, Jones HR (2017) Agatha: disentangling periodic signals from correlated noise in a periodogram framework. Mon Not R Astron Soc 470:4794–4814CrossRefGoogle Scholar
  10. 10.
    Ferreira MA, Hoekstra E, Merkus B, Visser B, Visser J (2013) Seflab: a lab for measuring software energy footprints. In: 2013 2nd International workshop on green and sustainable software (GREENS), pp 30–37. IEEEGoogle Scholar
  11. 11.
    Freedman DA et al (1981) Bootstrapping regression models. Ann Stat 9(6):1218–1228MathSciNetCrossRefGoogle Scholar
  12. 12.
    Grosskop K, Visser J (2013) Identification of application-level energy optimizations. In: Proceeding of ICT for sustainability (ICT4S), pp 101–107Google Scholar
  13. 13.
    Haight FA (1967) Handbook of the Poisson distributionGoogle Scholar
  14. 14.
    Hao S, Li D, Halfond WG, Govindan R (2012) Estimating android applications’ CPU energy usage via bytecode profiling. In: 2012 First international workshop on green and sustainable software (GREENS), pp 1–7. IEEEGoogle Scholar
  15. 15.
    Hasan S, King Z, Hafiz M, Sayagh M, Adams B, Hindle A (2016) Energy profiles of java collections classes. In: 2016 IEEE/ACM 38th international conference on software engineering (ICSE), pp 225–236. IEEEGoogle Scholar
  16. 16.
    Haugen Ø (2012) Common variability language (CVL) OMG revised submission. OMG Doc adGoogle Scholar
  17. 17.
    Hindle A, Wilson A, Rasmussen K, Barlow EJ, Campbell JC, Romansky S (2014) Greenminer: a hardware based mining software repositories software energy consumption framework. In: Proceedings of the 11th working conference on mining software repositories, pp 12–21. ACMGoogle Scholar
  18. 18.
    Hirst JM, Miller JR, Kaplan BA., Reed DD (2013) Watts up? Pro AC power meter for automated energy recordingCrossRefGoogle Scholar
  19. 19.
    Horcas JM, Pinto M, Fuentes L (2017) Variability models for generating efficient configurations of functional quality attributes. Inf Softw Technol 95:147–164CrossRefGoogle Scholar
  20. 20.
    Horcas JM, Pinto M, Fuentes L, Gámez N (2017) Self-adaptive energy-efficent applications: the hadas developing approach. In: 2017 IEEE 15th International conference on dependable, autonomic and secure computing, 15th International conference on pervasive intelligence and computing, 3rd International conference on big data intelligence and computing and cyber science and technology congress (DASC/PiCom/DataCom/CyberSciTech), pp 828–835.
  21. 21.
    Kalic G, Bojic I, Kusek M (2012) Energy consumption in android phones when using wireless communication technologies. In: MIPRO, 2012 Proceedings of the 35th international convention, pp 754–759. IEEEGoogle Scholar
  22. 22.
    Kim D, Choi JY, Hong JE (2017) Evaluating energy efficiency of internet of things software architecture based on reusable software components. Int J Distrib Sens Netw 13(1):1550147716682738Google Scholar
  23. 23.
    Manotas I, Pollock L, Clause J (2014) Seeds: a software engineer’s energy-optimization decision support framework. In: Proceedings of the 36th international conference on software engineering, pp 503–514. ACMGoogle Scholar
  24. 24.
    Miranskyy AV, Al-zanbouri Z, Godwin D, Bener AB (2017) Database engines: evolution of greenness. arXiv preprint arXiv:1701.02344
  25. 25.
    Montenegro JA, Pinto M, Fuentes L (2017) What do software developers need to know to build secure energy-efficient android applications? IEEE Access PP(99):1–1. CrossRefGoogle Scholar
  26. 26.
    Munoz DJ (2017) Achieving energy efficiency using a software product line approach. In: Proceedings of the 21st international systems and software product line conference, vol B, pp 131–138. ACMGoogle Scholar
  27. 27.
    Munoz DJ, Pinto M, Fuentes L (2017) Green software development and research with the HADAS toolkit. In: Proceedings of the 11th European conference on software architecture: companion proceedings, pp 205–211. ACMGoogle Scholar
  28. 28.
    Murwantara I, Bordbar B, Minku LL (2014) Measuring energy consumption for web service product configuration. In: Proceedings of the 16th international conference on information integration and web-based applications and services, pp 224–228. ACMGoogle Scholar
  29. 29.
    Pattinson C, Olaoluwa PO, Kor AL (2015) A comparative study on the energy consumption of PHP single and double quotes. In: 2015 IEEE international conference on data science and data intensive systems (DSDIS), pp 232–239. IEEEGoogle Scholar
  30. 30.
    Pohl K, Böckle G, van Der Linden FJ (2005) Software product line engineering: foundations, principles and techniques. Springer, BerlinCrossRefGoogle Scholar
  31. 31.
    Rao JN, Scott AJ (1981) The analysis of categorical data from complex sample surveys: chi-squared tests for goodness of fit and independence in two-way tables. J Am Stat Assoc 76(374):221–230MathSciNetCrossRefGoogle Scholar
  32. 32.
    Sapra V, Hindle A (2016) Web servers energy efficiency under HTTP/2. PeerJ Prepr 4:e2027v1Google Scholar
  33. 33.
    Stier C, Koziolek A, Groenda H, Reussner R (2015) Model-based energy efficiency analysis of software architectures. In: European conference on software architecture, pp 221–238. SpringerGoogle Scholar
  34. 34.
    Westin J (2017) Evaluation of energy consumption in virtualization environments: proof of concept using containersGoogle Scholar
  35. 35.
    Wijsman T (2015) Introduction to a CVL to Clafer transformation projectGoogle Scholar

Copyright information

© Springer-Verlag GmbH Austria, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Andalucía TechUniversidad de MálagaMálagaSpain

Personalised recommendations