ABSTRACT

Systems 237 7.3 Platform Enhancements for Energy-Aware VM Management 238

7.3.1 Coordinated VM Power Management with VirtualPower 239 7.3.1.1 VirtualPower Architectural Overview 239 7.3.1.2 Experimental Results 244

7.3.2 Paravirtualized Management Interfaces for Platform Power Budgeting 247 7.3.2.1 QoS Feedback with Congestion Pricing 247 7.3.2.2 Experimental Results 250

7.4 Power Management Mechanisms for Distributed Virtualized Platforms 253 7.4.1 System Managers for Distributed Power Budgeting 253 7.4.2 Coordinating Data Center Management with VPM

Tokens 255 7.4.2.1 Types of VPM Tokens 255 7.4.2.2 Managing Power with Budget Tokens 257

7.4.3 Experimental Results 257 7.5 Related Work 259

7.6 Conclusions and Future Challenges 261 References 263

7.1 INTRODUCTION The semiconductor industry has shifted toward multicore system architectures to continue harnessing the resources made available by Moore’s law, while avoiding the power and thermal bottlenecks associated with highperformance single-processor architectures. The effects of this transition are already apparent in data center environments, where commodity servers often consist of dual-package configurations that allow on the order of ten processors to be provisioned on a single platform. The increasing density of computational elements is accompanied with pressure on other platform components, such as memory and I/O (input/output). The net result is the profileration of dense server platform and rack configurations. Although these systems offer significant advantages for scale-up workloads, many enterprise applications are not able to fully exploit such architectures. The reasons for this include the inability for the associated software to scale to a larger number of processors, as well as the varying loads exhibited by web service applications. Unmitigated, the inability for applications to consistently and effectively make use of multicore server platforms can result in stranded data center resources, which can equate to significant cost inefficiencies. What is needed, then, is a means to manage resources in a fluid fashion, thereby achieving an elastic data center where servers make up a fungible resource pool that can dynamically be provisioned to applications in an on-demand manner. It is becoming increasingly clear that virtualization technologies can help meet this goal.