Using the Greenup, Powerup, and Speedup metrics to evaluate software energy efficiency

With recognizing power as a first-class citizen in the HPC community and the growth of software running on battery-driven devices, the need to evaluate software design based on the combined effects of energy and performance has become eminent. Despite of the numerous metrics to evaluate software performance, the study on how to evaluate software energy efficiency is still in its early stage. In this paper, we propose the Greenup, Powerup, and Speedup metrics (GPS-UP) to categorize software implementation and optimization efficiency. The GPSUP metrics transform the performance, power and energy of a program into a point on the GPS-UP software energy efficiency quadrant graph. We present eight categories of possible scenarios of software optimization, with examples on how to obtain them. Four categories are green (save energy), and four are red (waste energy). Moreover, we compare our metrics to existing metrics such as Energy Delay Product (EDP).

[1]  Felix Wolf,et al.  SCALASCA Parallel Performance Analyses of SPEC MPI2007 Applications , 2008, SIPEW.

[2]  Gustavo Pinto,et al.  Mining questions about software energy consumption , 2014, MSR 2014.

[3]  Adel Noureddine Towards a Better Understanding of the Energy Consumption of Software Systems , 2014 .

[4]  Stefan M. Petters,et al.  Race-to-halt energy saving strategies , 2014, J. Syst. Archit..

[5]  Chiara Francalanci,et al.  Measuring Application Software Energy Efficiency , 2012, IT Professional.

[6]  Qijun Gu,et al.  Program energy efficiency: The impact of language, compiler and implementation choices , 2014, International Green Computing Conference.

[7]  Abram Hindle Green mining: A methodology of relating software change to power consumption , 2012, 2012 9th IEEE Working Conference on Mining Software Repositories (MSR).

[8]  Matthias S. Müller,et al.  SPEC MPI2007—an application benchmark suite for parallel systems using MPI , 2010, ISC 2010.

[9]  Meikang Qiu,et al.  Energy consumption analysis of parallel sorting algorithms running on multicore systems , 2012, 2012 International Green Computing Conference (IGCC).

[10]  Suzanne Rivoire,et al.  Models and metrics for energy-efficient computer systems , 2008 .

[11]  Shuaiwen Song,et al.  Iso-Energy-Efficiency: An Approach to Power-Constrained Parallel Computation , 2011, 2011 IEEE International Parallel & Distributed Processing Symposium.

[12]  Margaret Martonosi,et al.  Wattch: a framework for architectural-level power analysis and optimizations , 2000, Proceedings of 27th International Symposium on Computer Architecture (IEEE Cat. No.RS00201).

[13]  Michael M. Resch,et al.  Tools for High Performance Computing - Proceedings of the 2nd International Workshop on Parallel Tools for High Performance Computing, July 2008, HLRS, Stuttgart , 2008, Parallel Tools Workshop.

[14]  Mark Horowitz,et al.  Energy dissipation in general purpose microprocessors , 1996, IEEE J. Solid State Circuits.

[15]  Martin Schulz,et al.  Bounding energy consumption in large-scale MPI programs , 2007, Proceedings of the 2007 ACM/IEEE Conference on Supercomputing (SC '07).

[16]  Jung Ho Ahn,et al.  McPAT: An integrated power, area, and timing modeling framework for multicore and manycore architectures , 2009, 2009 42nd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[17]  Rong Ge,et al.  Power-Aware Speedup , 2007, 2007 IEEE International Parallel and Distributed Processing Symposium.

[18]  Dong Li,et al.  Power-aware MPI task aggregation prediction for high-end computing systems , 2010, 2010 IEEE International Symposium on Parallel & Distributed Processing (IPDPS).

[19]  Richard W. Vuduc,et al.  Algorithmic Time, Energy, and Power on Candidate HPC Compute Building Blocks , 2014, 2014 IEEE 28th International Parallel and Distributed Processing Symposium.

[20]  Martin Burtscher,et al.  Effects of source-code optimizations on GPU performance and energy consumption , 2015, GPGPU@PPoPP.

[21]  Laxmikant V. Kalé,et al.  Using an Adaptive HPC Runtime System to Reconfigure the Cache Hierarchy , 2014, SC14: International Conference for High Performance Computing, Networking, Storage and Analysis.