Powernightmares: The Challenge of Efficiently Using Sleep States on Multi-core Systems

  • Thomas Ilsche
  • Marcus Hähnel
  • Robert Schöne
  • Mario Bielert
  • Daniel Hackenberg
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10659)

Abstract

Sleep states are an important and well-understood feature of modern server and desktop CPUs that enable significant power savings during idle and partial load scenarios. Making proper decisions about how to use this feature remains a major challenge for operating systems since it requires a trade-off between potential energy-savings and performance penalties for long and short phases of inactivity, respectively. In this paper we analyze the default behavior of the Linux kernel in this regard and identify weaknesses of certain default assumptions. We derive pathological patterns that trigger these weaknesses and lead to ‘Powernightmares’ during which power-saving sleep states are used insufficiently. Our analysis of a workstation and a large supercomputer reveals that these scenarios are relevant on real-life systems in default configuration. We present a methodology to analyze these effects in detail despite their inherent nature of being hardly observable. Finally, we present a concept to mitigate these problems and reclaim lost power saving opportunities.

Keywords

Linux Sleep state Energy efficiency Power consumption 

Notes

Acknowledgement

This work is supported in part by the German Research Foundation (DFG) within the CRC 912 - HAEC and by the European Union’s Horizon 2020 program in the READEX project (grant agreement number 671657). The authors thank Thomas Kissinger for the report and initial discussion that led to this investigation.

References

  1. 1.
    Advanced Configuration and Power Interface (ACPI) Specification, Revision 6.1, January 2016. uefi.org. Accessed 30 Jan 2017
  2. 2.
    Hackenberg, D., Ilsche, T., Schuchart, J., Schöne, R., Nagel, W.E., Simon, M., Georgiou, Y.: HDEEM: high definition energy efficiency monitoring. In: International Workshop on Energy Efficient Supercomputing (E2SC) (2014).  https://doi.org/10.1109/E2SC.2014.13
  3. 3.
    Hackenberg, D., Schöne, R., Ilsche, T., Molka, D., Schuchart, J., Geyer, R.: An energy efficiency feature survey of the Intel Haswell processor. In: IEEE International Parallel and Distributed Processing Symposium Workshop (IPDPSW) (2015).  https://doi.org/10.1109/IPDPSW.2015.70
  4. 4.
    Ilsche, T., Hackenberg, D., Graul, S., Schuchart, J., Schöne, R.: Power measurements for compute nodes: improving sampling rates, granularity and accuracy. In: International Green and Sustainable Computing Conference (IGSC) (2015).  https://doi.org/10.1109/IGCC.2015.7393710
  5. 5.
    Ilsche, T., Schöne, R., Schuchart, J., Hackenberg, D., Simon, M., Georgiou, Y., Nagel, W.E.: Power measurement techniques for energy-efficient computing: reconciling scalability, resolution, and accuracy. In: Second Workshop on Energy-Aware High Performance Computing (EnA-HPC) (2017, accepted for publication)Google Scholar
  6. 6.
    Intel Corporation: Desktop 4th Generation Intel Core Processor Family, Desktop Intel Pentium Processor Family, and Desktop Intel Celeron Processor Family, Datasheet, vol. 1 of 2, March 2014. intel.com. Accessed 12 Aug 2016
  7. 7.
    Intel Corporation: Intel Xeon Processor E5–1600/E5-2600/E5-4600 v2 Product Families, Datasheet, vol. One of Two, March 2014. intel.com. Accessed 12 Aug 2016
  8. 8.
    Kanev, S., Hazelwood, K., Wei, G.Y., Brooks, D.: Tradeoffs between power management and tail latency in warehouse-scale applications. In: IEEE International Symposium on Workload Characterization (IISWC) (2014).  https://doi.org/10.1109/IISWC.2014.6983037
  9. 9.
    McKenney, P.E.: NO_HZ: Reducing Scheduling-Clock Ticks. kernel.org. Accessed 09 May 2017
  10. 10.
    Pallipadi, V., Li, S., Belay, A.: cpuidle: do nothing, efficiently. In: Proceedings of the Ottawa Linux Symposium (OLS) (2007). kernel.org. Accessed 12 Jan 2017
  11. 11.
    Roba, A., Baruch, Z.: An enhanced approach to dynamic power management for the Linux cpuidle subsystem. In: IEEE International Conference on Intelligent Computer Communication and Processing (ICCP) (2015).  https://doi.org/10.1109/ICCP.2015.7312712
  12. 12.
    Schöne, R., Molka, D.: Integrating performance analysis and energy efficiency optimizations in a unified environment. Comput. Sci.-Res. Dev. 29(3–4), 231–239 (2014).  https://doi.org/10.1007/s00450-013-0243-7 CrossRefGoogle Scholar
  13. 13.
    Schöne, R., Molka, D., Werner, M.: Wake-up latencies for processor idle states on current x86 processors. Comput. Sci.-Res. Dev. 30(2), 219–227 (2014)CrossRefGoogle Scholar
  14. 14.
    Song, J.: System and method for processor utilization adjustment to improve deep c-state use, 1 January 2013. US Patent 8,347,119
  15. 15.
    Weste, N.H.E., Harris, D.M.: CMOS VLSI Design - A Circuits and Systems Perspective, 4th edn. Pearson, London (2011).  https://doi.org/10.1177/002072098602300231 Google Scholar

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  • Thomas Ilsche
    • 1
  • Marcus Hähnel
    • 2
  • Robert Schöne
    • 1
  • Mario Bielert
    • 1
  • Daniel Hackenberg
    • 1
  1. 1.Center for Information Services and High Performance Computing (ZIH)Technische Universität DresdenDresdenGermany
  2. 2.Operating Systems GroupTechnische Universität DresdenDresdenGermany

Personalised recommendations