IdlePower : Application-Aware Management of Processor Idle States Hrishikesh Amur

Power has become the first class design constraint in modern processor design. To reduce the power density caused by aggressive, speculative execution seen in previous processor generations, computer architects have turned to a multicore design strategy with each core substantially simplified. Additionally, different power-saving features have been proposed and integrated into each core to adapt dynamic execution scenarios. Due in part to the independent nature of these cores, the power management has also become more flexible to further reduce the overall power consumption. With careful adaptation schemes, the system can save power by entering different idle states dynamically with minimal performance impact. Given the simultaneous emergence of virtualization technologies, the question, then, is how to effectively leverage these idle states in the context of multiple virtual machines (VMs) executing on multicore parts. Towards this end, we develop the IdlePower approach to managing idle states in virtualized systems. Our approach combines a novel batching algorithm that creates improved opportunities to enter deep idle states by removing unnecessary system wakeups depending upon monitored behavior of workloads. IdlePower also provides application awareness in another fashion by not only entering deep idle states based upon transition latencies, but also factoring in the performance degradation that can occur due to secondary effects such as data loss in cache structures. We extend the use of Bloom filters with IdlePower to detect application characteristics for dynamically predicting whether deep idle states are worthwhile based upon possible performance implications. Overall, IdlePower is shown to improve residencies in the deepest C3 idle state by up to 10%, and to avoid performance degradations in workloads of up to 26%.

[1]  Burton H. Bloom,et al.  Space/time trade-offs in hash coding with allowable errors , 1970, CACM.

[2]  Scott Shenker,et al.  Scheduling for reduced CPU energy , 1994, OSDI '94.

[3]  J. Flinn,et al.  Energy-aware adaptation for mobile applications , 1999, SOSP.

[4]  Robin Kravets,et al.  Application‐driven power management for mobile communication , 2000, Wirel. Networks.

[5]  Beng-Hong Lim,et al.  Virtualizing I/O Devices on VMware Workstation's Hosted Virtual Machine Monitor , 2001, USENIX Annual Technical Conference, General Track.

[6]  Amin Vahdat,et al.  Managing energy and server resources in hosting centers , 2001, SOSP.

[7]  Trevor N. Mudge,et al.  Power: A First-Class Architectural Design Constraint , 2001, Computer.

[8]  Frank Bellosa,et al.  Cooperative I/O: a novel I/O semantics for energy-aware applications , 2002, OSDI '02.

[9]  Paramvir Bahl,et al.  Wake on wireless: an event driven energy saving strategy for battery operated devices , 2002, MobiCom '02.

[10]  Ragunathan Rajkumar,et al.  Critical power slope: understanding the runtime effects of frequency scaling , 2002, ICS '02.

[11]  Klara Nahrstedt,et al.  Energy-efficient soft real-time CPU scheduling for mobile multimedia systems , 2003, SOSP '03.

[12]  Amin Vahdat,et al.  Currentcy: A Unifying Abstraction for Expressing Energy Management Policies , 2003, USENIX Annual Technical Conference, General Track.

[13]  Carla Schlatter Ellis,et al.  The Synergy Between Power-Aware Memory Systems and Processor Voltage Scaling , 2003, PACS.

[14]  HarrisTim,et al.  Xen and the art of virtualization , 2003 .

[15]  VSV: L2-Miss-Driven Variable Supply-Voltage Scaling for Low Power , 2003, MICRO.

[16]  Andrew Warfield,et al.  Live migration of virtual machines , 2005, NSDI.

[17]  Jeffrey S. Chase,et al.  Making Scheduling "Cool": Temperature-Aware Workload Placement in Data Centers , 2005, USENIX Annual Technical Conference, General Track.

[18]  Margaret Martonosi,et al.  Live, Runtime Phase Monitoring and Prediction on Real Systems with Application to Dynamic Power Management , 2006, 2006 39th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO'06).

[19]  David E. Irwin,et al.  Ensemble-level Power Management for Dense Blade Servers , 2006, 33rd International Symposium on Computer Architecture (ISCA'06).

[20]  Hsien-Hsin S. Lee,et al.  Efficient System-on-Chip Energy Management with a Segmented Bloom Filter , 2006, ARCS.

[21]  Gil Neiger,et al.  IntelŴVirtualization Technology: Hardware Support for Efficient Processor Virtualization , 2006 .

[22]  Karsten Schwan,et al.  Energy-Aware Mobile Service Overlays: Cooperative Dynamic Power Management in Distributed Mobile Systems , 2007, Fourth International Conference on Autonomic Computing (ICAC'07).

[23]  Karsten Schwan,et al.  VirtualPower: coordinated power management in virtualized enterprise systems , 2007, SOSP.

[24]  Calton Pu,et al.  An Analysis of Performance Interference Effects in Virtual Environments , 2007, 2007 IEEE International Symposium on Performance Analysis of Systems & Software.

[25]  Ripal Nathuji,et al.  CompatPM: enabling energy efficient multimedia workloads for distributed mobile platforms , 2007, Electronic Imaging.

[26]  Justin J. Song,et al.  Prediction of CPU idle-busy activity pattern , 2008, 2008 IEEE 14th International Symposium on High Performance Computer Architecture.

[27]  Michael Wallace,et al.  Advanced Configuration and Power Interface , 2009 .