Computer Science Department
School of Computer Science, Carnegie Mellon University


Energy-Efficient Dynamic Capacity
Provisioning in Server Farms

Anshul Gandhi, Varun Gupta,
Mor Harchol-Balter, Michael Kozuch*

March 2010

Keywords: Server farms, power management, queueing theory

A central question in designing server farms today is how to efficiently provision the number of servers to handle unpredictable demand patterns, so as to extract the best performance while not wasting energy. While one would like to turn servers off when they become idle to save energy, the large setup cost (both, in terms of setup time and energy penalty) needed to switch the server back on can adversely affect performance. The problem is made more complex by the fact that today's servers provide multiple sleep or standby states which trade off the setup cost with the power consumed while the server is `sleeping'. With so many controls, finding the optimal server pool management policy is an almost intractable problem – How many servers should be /on/ at any given time, how many should be off, and how many should be in some sleep state?

In this paper, we analyze server farm management policies, and prove that it suffices to consider a small, natural class of policies to guarantee near-optimal behavior. We employ the popular metric of Energy-Response time Product (ERP) to capture the energy-performance tradeoff, and present the first theoretical results on the optimality of server farm policies under both stationary and time-varying demand patterns. We find that there exists a very small set of natural policies that always contains the optimal policy for a single server, and a near-optimal policy for multi-server systems, for a stationary demand pattern. We also consider server farm management policies for time-varying demand patterns and propose a robust, traffic-oblivious policy which is asymptotically optimal as the load becomes large.

35 pages

*Intel Research Pittsburgh

Return to: SCS Technical Report Collection
School of Computer Science

This page maintained by