Abstract
Green IT has emerged as a discipline concerned with the optimization of software solutions with regards to their energy consumption. In this domain, most of the state-of-the-art solutions concentrate on coarse-grained approaches to monitor the energy consumption of a device or a process. In this paper, we report on a fine-grained runtime energy monitoring framework we developed to help developers to diagnose energy hotspots with a better accuracy. Concretely, our approach adopts a two-layer architecture including OS-level and process-level energy monitoring. OS-level energy monitoring estimates the energy consumption of processes according to different hardware devices (CPU, network card). Process-level energy monitoring focuses on Java-based applications and builds on OS-level energy monitoring to provide an estimation of energy consumption at the granularity of classes and methods. We argue that this per-method analysis of energy consumption provides better insights to the application in order to identify potential energy hotspots. In particular, our preliminary validation demonstrates that we can monitor energy hotspots of Jetty web servers and monitor their variations under stress scenarios.
Similar content being viewed by others
Notes
Complementary metal oxide semiconductor.
ASM name is a reference to the asm keyword in C, and does not mean anything Kuleshov (2007).
References
Blackburn, S.M., Garner, R., Hoffman, C., Khan, A.M., McKinley, K.S., Bentzur, R., Diwan, A., Feinberg, D., Frampton, D., Guyer, S.Z., Hirzel, M., Hosking, A., Jump, M., Lee, H., Moss, J.E.B., Phansalkar, A., Stefanović, D., VanDrunen, T., von Dincklage, D., Wiedermann, B.: The DaCapo benchmarks: Java benchmarking development and analysis. In: OOPSLA ’06: Proceedings of the 21st Annual ACM SIGPLAN Conference on Object-Oriented Programing, Systems, Languages, and Applications, pp. 169–190. ACM Press, New York, NY (2006). doi:10.1145/1167473.1167488
Do, T., Rawshdeh, S., Shi, W.: pTop: a process-level power profiling tool. In: HotPower’09: Proceedings of the 2nd Workshop on Power Aware Computing and Systems. Big Sky, MT (2009)
Feeney, L., Nilsson, M.: Investigating the energy consumption of a wireless network interface in an ad hoc networking environment. In: INFOCOM’01: Proceesing of the Twentieth Annual Joint Conference of the IEEE Computer and Communications Societies, vol. 3, pp. 1548–1557 (2001). doi:10.1109/INFCOM.2001.916651
Flinn, J., Satyanarayanan, M.: PowerScope: a tool for profiling the energy usage of mobile applications. In: WMCSA’99: Proceedings of the Second IEEE Workshop on Mobile Computer Systems and Applications, p. 2. IEEE Computer Society, Washington, DC (1999)
Gite, V.: How do I Find Out Linux CPU Utilization? (2014). http://www.cyberciti.biz/tips/how-do-i-find-out-linux-cpu-utilization.html
Kansal, A., Zhao, F.: Fine-grained energy profiling for power-aware application design. SIGMETRICS Perform. Eval. Rev. 36(2), 26–31 (2008). doi:10.1145/1453175.1453180
Kuleshov, E.: Using the ASM framework to implement common java bytecode transformation patterns. In: AOSD’07: Proceedings of the 6th International Conference on Aspect-Oriented Software Development. Vancouver, Canada (2007)
McIntire, D., Stathopoulos, T., Kaiser, W.: ETOP: sensor network application energy profiling on the LEAP2 platform. In: IPSN’07: Proceedings of the 6th international conference on Information processing in sensor networks, pp. 576–577. ACM, New York, (2007). doi:10.1145/1236360.1236448
Noureddine, A., Bourdon, A., Rouvoy, R., Seinturier, L.: A preliminary study of the impact of software engineering on greenit. In: 1st International Workshop on Green and Sustainable Software (GREENS’12), pp. 21–27 (2012). doi:10.1109/GREENS.2012.6224251
Noureddine, A., Bourdon, A., Rouvoy, R., Seinturier, L.: Runtime monitoring of software energy hotspots. In: Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering, ASE 2012, pp. 160–169. ACM, New York, (2012). doi:10.1145/2351676.2351699
Noureddine, A., Rouvoy, R., Seinturier, L.: Unit testing of energy consumption of software libraries. In: Proceedings of the 29th Annual ACM Symposium on Applied Computing, SAC 2014. ACM, New York, (2014)
Pouwelse, J., Langendoen, K., Sips, H.: Dynamic voltage scaling on a low-power microprocessor. In: MMSA’00: Proceesings of the 2nd International Symposium on Mobile Multimedia Systems and Applications, pp. 157–164. Delft (2000). URL http://www.pds.ewi.tudelft.nl/~koen/papers/mmsa.ps.gz
Rivest, R.L., Shamir, A., Adleman, L.: A method for obtaining digital signatures and public-key cryptosystems. Commun. ACM 21(2), 120–126 (1978). doi:10.1145/359340.359342
Rivoire, S., Shah, M.A., Ranganathan, P., Kozyrakis, C.: JouleSort: a balanced energy-efficiency benchmark. In: SIGMOD’07: Proceedings of the 2007 ACM SIGMOD International Conference on Management of Data, pp. 365–376. ACM, New York, (2007). doi:10.1145/1247480.1247522
Ruhl, C., Appleby, P., Fennema, J., Naumov, A., Schaffer, M.: Economic development and the demand for energy: a historical perspective on the next 20 years. Energy Policy 50(0), 109–116 (2012). doi:10.1016/j.enpol.2012.07.039. URL http://www.sciencedirect.com/science/article/pii/S0301421512006313
Seo, C., Malek, S., Medvidovic, N.: An energy consumption framework for distributed java-based systems. In: ASE’07: Proceedings of the Twenty-Second IEEE/ACM International Conference on Automated Software Engineering, pp. 421–424. ACM, New York, (2007). doi:10.1145/1321631.1321699
The Green Challenge for USI 2010. http://sites.google.com/a/octo.com/green-challenge
Venners, B.: Inside the Java Virtual Machine, 1st edn. McGraw-Hill Professional, New York (1999)
Vereecken, W., Van Heddeghem, W., Colle, D., Pickavet, M., Demeester, P.: Overall ict footprint and green communication technologies. In: ISCCSP’10: Proceedings of the 4th International Symposium on Communications, Control and Signal Processing, pp. 1–6 (2010). doi:10.1109/ISCCSP.2010.5463327
Webb, M.: SMART 2020: enabling the low carbon economy in the information age, a report by The Climate Group on behalf of the Global eSustainability Initiative (GeSI). GeSI (2008)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Noureddine, A., Rouvoy, R. & Seinturier, L. Monitoring energy hotspots in software. Autom Softw Eng 22, 291–332 (2015). https://doi.org/10.1007/s10515-014-0171-1
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10515-014-0171-1