Runtime monitoring of software energy hotspots

GreenIT 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. However, none of the existing solutions addresses in-process energy monitoring to provide in-depth analysis of a process energy consumption. In this paper, we therefore report on a fine-grained runtime energy monitoring framework we developed to help developers to diagnose energy hotspots with a better accuracy than the state-of-the-art. Concretely, our approach adopts a 2-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.

[1]  Christoforos E. Kozyrakis,et al.  JouleSort: a balanced energy-efficiency benchmark , 2007, SIGMOD '07.

[2]  Trevor Mudge,et al.  Dynamic voltage scaling on a low-power microprocessor , 2001 .

[3]  Weisong Shi,et al.  pTop : A Process-level Power Profiling Tool , 2009 .

[4]  Erik Mouw,et al.  Linux Kernel Procfs Guide , 2001 .

[5]  Didier Colle,et al.  Overall ICT footprint and green communication technologies , 2010, 2010 4th International Symposium on Communications, Control and Signal Processing (ISCCSP).

[6]  Mahadev Satyanarayanan,et al.  PowerScope: a tool for profiling the energy usage of mobile applications , 1999, Proceedings WMCSA'99. Second IEEE Workshop on Mobile Computing Systems and Applications.

[7]  Martin Nilsson,et al.  Investigating the energy consumption of a wireless network interface in an ad hoc networking environment , 2001, Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society (Cat. No.01CH37213).

[8]  W. Kaiser,et al.  etop-Sensor Network Application Energy Profiling on the LEAP2 Platform , 2007, 2007 6th International Symposium on Information Processing in Sensor Networks.

[9]  Sam Malek,et al.  An energy consumption framework for distributed java-based systems , 2007, ASE.

[10]  Feng Zhao,et al.  Fine-grained energy profiling for power-aware application design , 2008, PERV.