Application-Level Energy Awareness for OpenMP

  • Ferdinando Alessi
  • Peter ThomanEmail author
  • Giorgis Georgakoudis
  • Thomas Fahringer
  • Dimitrios S. Nikolopoulos
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9342)


Power, and consequently energy, has recently attained first-class system resource status, on par with conventional metrics such as CPU time. To reduce energy consumption, many hardware- and OS-level solutions have been investigated. However, application-level information - which can provide the system with valuable insights unattainable otherwise - was only considered in a handful of cases. We introduce OpenMPE, an extension to OpenMP designed for power management. OpenMP is the de-facto standard for programming parallel shared memory systems, but does not yet provide any support for power control. Our extension exposes (i) per-region multi-objective optimization hints and (ii) application-level adaptation parameters, in order to create energy-saving opportunities for the whole system stack. We have implemented OpenMPE support in a compiler and runtime system, and empirically evaluated its performance on two architectures, mobile and desktop. Our results demonstrate the effectiveness of OpenMPE with geometric mean energy savings across 9 use cases of 15 % while maintaining full quality of service.



This research has been partially funded by the FWF Austrian Science Fund under contract I01079 (GEMSCLAIM).


  1. 1.
    Chandrakasan, A.P., et al.: Low-power CMOS digital design. IEEE J. Solid State Circuits 27(4), 473–484 (1992)CrossRefGoogle Scholar
  2. 2.
    Chen, H., et al.: Anole: a case for energy-aware mobile application design. In: 2012 41st International Conference on Parallel Processing Workshops (ICPPW), pp. 232–238 (2012)Google Scholar
  3. 3.
    Curtis-Maury, M., et al.: Prediction models for multi-dimensional power-performance optimization on many cores. In: Proceedings of the 17th International Conference on Parallel Architectures and Compilation Techniques (PACT 2008), pp. 250–259. ACM, Toronto, Ontario, Canada (2008)Google Scholar
  4. 4.
    Dhodapkar, A.S., Smith, J.E.: Comparing program phase detection techniques. In: Proceedings of the 36th IEEE/ACM International Symposium on Microarchitecture (MICRO 36). IEEE Computer Society, Washington, DC, USA (2003)Google Scholar
  5. 5.
    Flautner, K., et al.: Automatic performance setting for dynamic voltage scaling. Wirel. Netw. 8(5), 507–520 (2002)CrossRefzbMATHGoogle Scholar
  6. 6.
    Flinn, J., Satyanarayanan, M.: Energy-aware adaptation for mobile applications. In: Proceedings of the Seventeenth ACM Symposium on Operating Systems Principles (SOSP 1999), pp. 48–63. ACM, Charleston, South Carolina, USA (1999)Google Scholar
  7. 7.
    Flinn, J., Satyanarayanan, M.: Managing battery lifetime with energy-aware adaptation. ACM Trans. Comput. Syst. 22(2), 137–179 (2004)CrossRefGoogle Scholar
  8. 8.
    Fritts, J.E., et al.: MediaBench II video: expediting the next generation of video systems research. Microprocess. Microsyst. 33(4), 301–318 (2009)CrossRefGoogle Scholar
  9. 9.
    Hewlett-Packard Corp., Intel Corp., Microsoft Corp., Phoenix Technologies Ltd., Toshiba Corp., Advanced Configuration and Power Interface Specification (ACPI). Specification Revision 5.0. (2013)Google Scholar
  10. 10.
    Hsu, C.-H., Feng, W.-C.: A power-aware run-time system for high-performance computing. In: Proceedings of the 2005 ACM/IEEE Conference on Supercomputing (SC 2005), pp. 1. IEEE Computer Society, Washington, DC, USA (2005)Google Scholar
  11. 11.
    Hsu, C.-H., Kremer, U.: The design, implementation, and evaluation of a compiler algorithm for CPU energy reduction. In: Proceedings of the ACM SIGPLAN 2003 Conference on Programming Language Design and Implementation (PLDI 2003), pp. 38–48. ACM, San Diego, California, USA (2003)Google Scholar
  12. 12.
    Jordan, H., et al.: A multi-objective auto-tuning framework for parallel codes. In: Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis (SC 2012), pp. 10:1–10:12. IEEE Computer Society Press, Salt Lake City, Utah (2012)Google Scholar
  13. 13.
    Li, D., et al.: Hybrid MPI/OpenMP power-aware computing. In: 2010 IEEE International Symposium on Parallel Distributed Processing (IPDPS), pp. 1–12 (2010)Google Scholar
  14. 14.
    Liu, X., et al.: Chameleon: application-level power management. IEEE Trans. Mob. Comput. 7(8), 995–1010 (2008)CrossRefGoogle Scholar
  15. 15.
    Lorch, J.R., Smith, A.J.: Operating system modifications for task-based speed and voltage. In: Proceedings of the 1st International Conference on Mobile Systems, Applications and Services (MobiSys 2003), pp. 215–229. ACM, San Francisco, California (2003)Google Scholar
  16. 16.
    OpenMP Architecture Review Board. OpenMP Application Program Interface. Specification Version 4.0. (2013)Google Scholar
  17. 17.
    Pallipadi, V., Starikovskiy, A.: The ondemand governor. In: Proceedings of the Linux Symposium, vol. 2, pp. 215–230 (2006)Google Scholar
  18. 18.
    Pettis, N., et al.: Automatic run-time selection of power policies for operating systems. In: Proceedings of the Design, Automation and Test in Europe (DATE 2006), vol. 1, pp. 1–6 (2006)Google Scholar
  19. 19.
    Rajovic, N., et al.: Supercomputing with commodity CPUs: are mobile SoCs ready for HPC? In: Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis (SC 2013), pp. 40:1–40:12. ACM, Denver, Colorado (2013)Google Scholar
  20. 20.
    Rountree, B., et al.: Adagio: making DVS practical for complex HPC applications. In: Proceedings of the 23rd International Conference on Supercomputing (ICS 2009), pp. 460–469. ACM, Yorktown Heights, NY, USA (2009)Google Scholar
  21. 21.
    Qiang, W., et al.: Dynamic-compiler-driven control for microprocessor energy and performance. IEEE Micro 26(1), 119–129 (2006)CrossRefGoogle Scholar
  22. 22.
    Yuan, W., Nahrstedt, K.: Practical voltage scaling for mobile multimedia devices. In: Proceedings of the 12th ACM International Conference on Multimedia (MULTIMEDIA 2004), pp. 924–931. ACM, New York, NY, USA (2004)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Ferdinando Alessi
    • 1
  • Peter Thoman
    • 1
    Email author
  • Giorgis Georgakoudis
    • 2
  • Thomas Fahringer
    • 1
  • Dimitrios S. Nikolopoulos
    • 2
  1. 1.University of InnsbruckInnsbruckAustria
  2. 2.Queen’s University of BelfastBelfastUK

Personalised recommendations