Wake-up latencies for processor idle states on current x86 processors

During the last decades various low-power states have been implemented in processors. They can be used by the operating system to reduce the power consumption. The applied power saving mechanisms include load-dependent frequency and voltage scaling as well as the temporary deactivation of unused components. These techniques reduce the power consumption and thereby enable energy efficiency improvements if the system is not used to full capacity. However, an inappropriate usage of low-power states can significantly degrade the performance. The time required to re-establish full performance can be significant. Therefore, deep idle states are occasionally disabled, especially if applications have real-time requirements. In this paper, we describe how low-power states are implemented in current x86 processors. We then measure the wake-up latencies of various low-power states that occur when a processor core is reactivated. Finally, we compare our results to the vendor’s specifications that are exposed to the operating system.

[1]  C. Chrisjin Gnana Suji,et al.  Performance analysis of power gating designs in low power VLSI circuits , 2011, 2011 International Conference on Signal Processing, Communication, Computing and Networking Technologies.

[2]  Rong Ge,et al.  CPU MISER: A Performance-Directed, Run-Time System for Power-Aware Clusters , 2007, 2007 International Conference on Parallel Processing (ICPP 2007).

[3]  Sally A. McKee,et al.  Identifying energy-efficient concurrency levels using machine learning , 2007, 2007 IEEE International Conference on Cluster Computing.

[4]  Ananta Tiwari,et al.  Green Queue: Customized Large-Scale Clock Frequency Scaling , 2012, 2012 Second International Conference on Cloud and Green Computing.

[5]  William Jalby,et al.  Evaluation of CPU frequency transition latency , 2014, Computer Science - Research and Development.

[6]  Robert Schöne,et al.  On-line analysis of hardware performance events for workload characterization and processor frequency scaling decisions , 2011, ICPE '11.

[7]  Massoud Pedram,et al.  Dynamic voltage and frequency scaling under a precise energy model considering variable and fixed components of the system power dissipation , 2004, ICCAD 2004.

[8]  Massoud Pedram,et al.  Dynamic voltage and frequency scaling under a precise energy model considering variable and fixed components of the system power dissipation , 2004, IEEE/ACM International Conference on Computer Aided Design, 2004. ICCAD-2004..

[9]  Wu-chun Feng,et al.  A Power-Aware Run-Time System for High-Performance Computing , 2005, ACM/IEEE SC 2005 Conference (SC'05).

[10]  Bronis R. de Supinski,et al.  Adagio: making DVS practical for complex HPC applications , 2009, ICS.

[11]  Thomas Ilsche,et al.  The VampirTrace Plugin Counter Interface: Introduction and Examples , 2010, Euro-Par Workshops.

[12]  Robert Schöne,et al.  Memory Performance at Reduced CPU Clock Speeds: An Analysis of Current x86_64 Processors , 2012, HotPower.

[13]  Massoud Pedram,et al.  Clock-gating and its application to low power design of sequential circuits , 2000 .

[14]  Robert Schöne,et al.  Main memory and cache performance of intel sandy bridge and AMD bulldozer , 2014, MSPC@PLDI.

[15]  Dimitrios S. Nikolopoulos,et al.  Online power-performance adaptation of multithreaded programs using hardware event-based prediction , 2006, ICS '06.

[16]  Gurindar S. Sohi,et al.  A static power model for architects , 2000, MICRO 33.

[17]  Enrique S. Quintana-Ortí,et al.  Automatic detection of power bottlenecks in parallel scientific applications , 2013, Computer Science - Research and Development.

[18]  Bernd Mohr,et al.  Determine energy-saving potential in wait-states of large-scale parallel programs , 2011, Computer Science - Research and Development.