# US 8,789,061 B2 · System and method for datacenter power management

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,789,061 B2
- Document ID: US8789061B2
- Status: Granted
- Kind: B2
- Application number: 12/697,528
- Filed: 2010-02-01
- Published: 2011-08-04
- Granted: 2014-07-22
- Earliest claimed: 2010-02-01
- Assignees: CA, Inc.
- Applicants: Milan Pavel; Stephen B. Boston; Paul Patti; Andrew Sanchez
- Inventors: Milan Pavel; Stephen B. Boston; Paul Patti; Andrew Sanchez
- Web page: https://patentgrep.com/patent/US8789061B2

## CPC

- G06Q 50/06: Energy or water supply
- G06F 1/3234: Power saving characterised by the action undertaken
- G06F 1/329: by task scheduling
- G06F 9/5094: {where the allocation takes into account power or heat criteria (power management in computers in general G06F1/3203; thermal management in computers in general G06F1/206)}
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A system and method for datacenter power management is disclosed. In particular embodiments, the method includes receiving, with a processor, a request for execution of an application. The method also includes for each of a plurality of datacenters, determining an amount of electricity required to execute the application at the respective datacenter. The method also includes, for each of the plurality of datacenters, determining a cost associated with executing the application at the respective datacenter based, at least in part, on the amount of electricity required to execute the application at the respective datacenter. The method further includes selecting one of the plurality of datacenters to execute the application based, at least in part, on the cost associated with executing the application at the respective datacenter and executing the application at the selected datacenter.

## Claims

### Claim 1

A method comprising:
receiving, with a processor, a request for execution of an application;
for each of a plurality of datacenters, determining an amount of electricity required to execute the application at the respective datacenter, wherein each of the plurality of datacenters comprises a plurality of processors, and wherein determining the amount of electricity comprises:
determining an amount of electricity consumed by each of the plurality of processors for a predetermined unit of processing time; and
for each of the plurality of processors at each respective datacenter, determining a number of predetermined units of processing time required to execute the application;
receiving price data for each of the plurality of datacenters, the price data indicative of a price of electricity at each of a plurality of times of day;
for each of the plurality of datacenters, determining a cost associated with executing the application at the respective datacenter for each of the plurality of times of day based, at least in part, on:
the amount of electricity required to execute the application at the respective datacenter; and
the price data; and
scheduling the application for execution on one of the plurality of datacenters at one of the plurality of times of day based, at least in part, on the cost associated with executing the application at each of the respective datacenters.

### Claim 2 (depends on 1)

The method of claim 1, wherein executing the application further comprises executing the application at the scheduled one of the plurality of times of day.

### Claim 3 (depends on 1)

The method of claim 1, wherein the request for execution of the application further comprises data to be processed during execution of the application, and wherein the number of predetermined units of processing time required to execute the application are determined based on the data to be processed during execution of the application.

### Claim 4 (depends on 3)

The method of claim 3, further comprising:
determining a size of the data to be processed, and wherein the number of predetermined units of processing time required to execute the application are further determined based on the size of the data to be processed.

### Claim 5

A system comprising:
a scheduling server operable to:
receive the request to execute the application;
for each of a plurality of datacenters, determine an amount of electricity required to execute the application at the respective datacenter, wherein each of the plurality of datacenters comprises a plurality of processors, and wherein determining the amount of electricity comprises:
determining an amount of electricity consumed by each of the plurality of processors for a predetermined unit of processing time; and
for each of the plurality of processors at each respective datacenter, determining a number of predetermined units of processing time required to execute the application;
receive price data for each of the plurality of datacenters, the price data indicative of a price of electricity at each of a plurality of times of day;
for each of the plurality of datacenters, determine a cost associated with executing the application at the respective datacenter for each of the plurality of times of day based, at least in part, on:
the amount of electricity required to execute the application at the respective datacenter; and
the price data; and
schedule the application for execution on one of the plurality of datacenters at one of the plurality of times of day based, at least in part, on the cost associated with executing the application at each of the respective datacenters.

### Claim 6 (depends on 5)

The system of claim 5, wherein the selected one of the plurality of datacenters is further operable to execute the application at the scheduled one of the plurality of times of day.

### Claim 7 (depends on 5)

The system of claim 5, wherein the request for execution of the application further comprises data to be processed during execution of the application, and wherein the number of predetermined units of processing time required to execute the application are determined based on the data to be processed during execution of the application.

### Claim 8 (depends on 7)

The system of claim 7, the scheduling server further operable to:
determine a size of the data to be processed, and wherein the number of predetermined units of processing time required to execute the application are further determined based on the size of the data to be processed.

### Claim 9

A tangible non-transitory computer readable storage medium comprising logic, the logic operable, when executed on a process to:
receive a request for execution of an application;
for each of a plurality of datacenters, determine an amount of electricity required to execute the application at the respective datacenter, wherein each of the plurality of datacenters comprises a plurality of processors, and wherein determining the amount of electricity comprises:
determining an amount of electricity consumed by each of the plurality of processors for a predetermined unit of processing time; and
for each of the plurality of processors at each respective datacenter, determining a number of predetermined units of processing time required to execute the application;
receive price data for each of the plurality of datacenters, the price data indivative of a price electricity at each of a plurality of times of day;
for each of the plurality of datacenters, determine a cost associated with executing the application at the respective datacenter for each of the plurality of times of day based, at least in part, on:
the amount of electricity required to execute the application at the respective datacenter; and
the price data; and
schedule the application for execution on one of the plurality of datacenters at one of the plurality of times of day based, at least in part, on the cost associated with executing the application at each of the respective datacenters.

### Claim 10 (depends on 9)

The tangible computer readable storage medium of claim 9, wherein the logic is operable to execute the application by executing the application at the selected one of the plurality of times of day.

### Claim 11 (depends on 9)

The tangible computer readable storage medium of claim 9, wherein the request for execution of the application further comprises data to be processed during execution of the application, and wherein the number of predetermined units of processing time required to execute the application are determined based on the data to be processed during execution of the application.

### Claim 12 (depends on 11)

The tangible computer readable storage medium of claim 11, the logic further operable to:
determine a size of the data to be processed, and wherein the number of predetermined units of processing time required to execute the application are further determined based on the size of the data to be processed.

### Claim 13

A system comprising:
means for receiving, with a processor, a request for execution of an application;
means for determining, for each of a plurality of datacenters, an amount of electricity required to execute the application, wherein each of the plurality of datacenters comprises a plurality of processors, and wherein determining the amount of electricity comprises:
determining an amount of electricity consumed by each of the plurality of processors for a predetermined unit of processing time; and
for each of the plurality of processors at each respective datacenter, determining a number of predetermined units of processing time required to execute the application;
means for receiving price data for each of the plurality of datacenters, the price data indicative of a price of electricity at each of a plurality of times of day;
means for determining, for each of the plurality of datacenters, a cost associated with executing the application at each respective datacenter for each of the plurality of times of day based, at least in part, on:
the amount of electricity required to execute the application at each respective datacenter; and
the price data; and
means for scheduling the application for execution on one of the plurality of datacenters at one of the plurality of times of day based, at least in part, on the cost associated with executing the application at each of the respective datacenters.
