IP Library Granted Patent US 8,555,283
Granted Patent B2
US 8,555,283 · App. 11/871,369 · Granted Oct 8, 2013

Temperature-aware and energy-aware scheduling in a computer system

Inventors: Ayse K. Coskun (La Jolla, CA); Kenny C. Gross (San Diego, CA); Keith A. Whisnant (San Diego, CA)
Assignee: Oracle America, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,555,283
App. No.
11/871,369
Granted
Oct 8, 2013
Kind
B2
Abstract

A computer system to schedule loads across a set of processor cores is described. During operation, the computer system receives a process to be executed. Next, the computer system obtains one or more thermodynamic process characteristics associated with the process and one or more thermodynamic processor-core characteristics associated with operation of the set of processor cores. Then, the computer system schedules the process to be executed by at least one of the processor cores based on the one or more thermodynamic process characteristics and the one or more thermodynamic processor-core characteristics.

Claims (31)

1. A method for scheduling loads across a set of processor cores, comprising:

receiving a process to be executed;

obtaining one or more thermodynamic process characteristics associated with the process and one or more thermodynamic processor-core characteristics associated with operation of the set of processor cores, and wherein the one or more thermodynamic process characteristics are based on an average of one or more thermodynamic process characteristics associated with previous executions of other processes; and

balancing an energy consumption and a temperature distribution in the set of processor cores by scheduling the process to be executed by at least one of the processor cores based on the one or more thermodynamic process characteristics and the one or more thermodynamic processor-core characteristics.

2. The method of claim 1 , wherein the one or more thermodynamic process characteristics are associated with previous executions of the process.

3. The method of claim 1 , wherein the one or more thermodynamic process characteristics include a thermal history.

4. The method of claim 1 , wherein the one or more thermodynamic process characteristics include energy consumption.

5. The method of claim 1 , wherein the one or more thermodynamic process characteristics include energy consumption and a thermal history.

6. The method of claim 1 , wherein the one or more thermodynamic processor-core characteristics include a thermal history.

7. The method of claim 1 , wherein the one or more thermodynamic processor-core characteristics include energy consumption.

8. The method of claim 1 , wherein the one or more thermodynamic processor-core characteristics include energy consumption and a thermal history.

9. The method of claim 1 , wherein the scheduling is based on a bi-variate function that includes the one or more thermodynamic process characteristics and the one or more thermodynamic processor-core characteristics.

10. The method of claim 9 , wherein the bi-variate function includes energy consumption and a thermal history of the set of processor cores.

11. The method of claim 1 , wherein the scheduling is initially based on either the one or more thermodynamic process characteristics or the one or more thermodynamic processor-core characteristics, and is then refined based on the other of the one or more thermodynamic process characteristics and the one or more thermodynamic processor-core characteristics.

12. The method of claim 1 , wherein the one or more thermodynamic process characteristics and the one or more thermodynamic processor-core characteristics are assigned different weights when the scheduling is determined.

13. The method of claim 1 , wherein the scheduling of the process involves assigning the process to one or more processor cores that have the least thermal stress.

14. The method of claim 1 , wherein the set of processor cores are included in multiple processors.

15. The method of claim 1 , wherein the set of processor cores are included in a single processor.

16. The method of claim 1 , further comprising updating stored values of the one or more thermodynamic process characteristics associated with the process when the process is completed, thereby facilitating closed-loop control.

17. The method of claim 1 , further comprising updating stored values of the one or more thermodynamic processor-core characteristics associated with operation of the set of processor cores after a time interval has elapsed, thereby facilitating closed-loop control.

18. A computer program product for use in conjunction with a computer system, the computer program product comprising a non-transitory computer-readable storage medium and a computer-program mechanism embedded therein for scheduling loads across a set of processor cores, the computer-program mechanism including:

instructions for receiving a process to be executed;

instructions for obtaining one or more thermodynamic process characteristics associated with the process and one or more thermodynamic processor-core characteristics associated with operation of the set of processor cores, and wherein the one or more thermodynamic process characteristics are based on an average of one or more thermodynamic process characteristics associated with previous executions of other processes; and

instructions for balancing an energy consumption and a temperature distribution in the set of processor cores by scheduling the process to be executed by at least one of the processor cores based on the one or more thermodynamic process characteristics and the one or more thermodynamic processor-core characteristics.

19. A computer system, comprising:

a set of processor cores;

memory configured to store thermodynamic process characteristics associated with processes and configured to store thermodynamic characteristics associated with operation of the set of processor cores; and

a scheduler, wherein the scheduler is configured to execute instructions, and wherein the instructions include:

instructions for receiving a process to be executed;

instructions for obtaining one or more thermodynamic process characteristics associated with the process and one or more thermodynamic processor-core characteristics associated with operation of the set of processor cores, and wherein the one or more thermodynamic process characteristics are based on an average of one or more thermodynamic process characteristics associated with previous executions of other processes; and

instructions for balancing an energy consumption and a temperature distribution in the set of processor cores by scheduling the process to be executed by at least one of the processor cores based on the one or more thermodynamic process characteristics and the one or more thermodynamic processor-core characteristics.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037311/0206 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2007
From: COSKUN, AYSE K.; GROSS, KENNY C.; WHISNANT, KEITH A.
To: SUN MICROSYSTEMS, INC.
Reel/Frame 020116/0332 →
Continuity (1)
Related Publication 20090100437A1 · Apr 16, 2009