Reducing Electricity Demand Charge for Data Centers with Partial Execution

Data centers consume an enormous amount of energy and incur high electricity cost. In this paper, we focus on the familiar problem of reducing data center energy cost with two new perspectives. First, we find, through an empirical study of contracts of electric utilities that power Google data centers, that demand charge per kW for the maximum power used is a substantial component of the total cost, in addition to the energy charge for the total kWh energy used. Second, many services such as Web search do tolerate partial execution of the requests because the response quality is a concave function of processing time. Data from Microsoft Bing search engine confirms this observation. We propose a simple idea of using partial execution to reduce the peak power demand and energy cost of data centers. We systematically study the problem of scheduling partial execution with stringent SLAs on response quality. For a single data center, we derive an optimal algorithm to solve the workload scheduling problem. In the case of multiple geo-distributed data centers, the demand of each data center is controlled by the request routing algorithm, which makes the problem much more involved. We decouple the two aspects, and develop a distributed optimization algorithm to solve the large-scale request routing problem. Trace-driven simulations show that partial execution reduces cost by 3%--10.5% for one data center, and by 15.5% for geo-distributed data centers together with request routing.
View on arXiv