IP Library Granted Patent US 9,672,068
Granted Patent B2
US 9,672,068 · App. 14/554,075 · Granted Jun 6, 2017

Virtual machine scheduling using optimum power-consumption profile

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 9,672,068
App. No.
14/554,075
Granted
Jun 6, 2017
Kind
B2
Abstract

Methods and systems of determining an optimum power-consumption profile for virtual machines running in a data center are disclosed. In one aspect, a power-consumption profile of a virtual machine and a unit-rate profile of electrical power cost over a period are received. The methods determine an optimum power-consumption profile based on the power-consumption profile and the unit-rate profile. The optimum power-consumption profile may be used reschedule the virtual machine over the period.

Claims (78)

1. A system to schedule virtual machines comprising:

one or more processors;

one or more data-storage devices; and

a routine stored in the data-storage devices and executed using the one or more processors, the routine

determining an optimum power-consumption profile based on a power-consumption profile of a virtual machine over a period of time and a unit-rate profile of electrical power cost over the period of time, wherein the optimum power-consumption profile minimizes power consumption of the virtual machine by substantially aligning minima of the optimum power-consumption profile with maximum unit-rate cost of the unit-rate profile and substantially aligning maxima of the optimum power-consumption profile with minimum unit-rate cost of the unit-rate profile; and

rescheduling the virtual machine over the same period with a workload having the optimum power-consumption profile.

2. The system of claim 1 wherein the power-consumption profile represents power consumption of the virtual machine periodically scheduled over time.

3. The system of claim 1 , wherein workload associated with the optimum power-consumption profile equals workload associated with the power-consumption profile.

4. The system of claim 1 wherein the optimum power-consumption profile minimizes power cost of the virtual machine execution.

5. A system to schedule virtual machines comprising:

one or more processors;

one or more data-storage devices; and

a routine stored in the data-storage devices and executed using the one or more processors, the routine

determining an optimum power-consumption profile based on a power-consumption profile of a virtual machine over a period of time and a unit-rate profile of electrical power cost over the period, wherein determining the optimum power-consumption profile further comprises;

computing a total workload based on the power-consumption profile;

ordering the unit-rate profile to generate an order unit-rate profile;

forming an ordered unit-rate index set from indices of the ordered unit-rate profile;

initializing a minimum power-consumption profile based on a minimum power level of the power-consumption profile;

ordering power levels of the power-consumption profile from smallest to largest in an ordered power-consumption profile; and

iteratively updating power levels of the minimum power-consumption profile to obtain the optimum power-consumption profile based on the ordered unit-rate index set and the ordered power-consumption profile; and

rescheduling the virtual machine over the period with a workload having the optimum power-consumption profile.

6. The system of claim 5 wherein iteratively updating power levels of the minimum power-consumption profile to obtain the optimum power-consumption profile further comprises:

for each iteration,

computing a workload based on the minimum power-consumption profile;

computing an error difference between the total workload and the workload;

determining a maximum power level in power-consumption profile;

reading a power level from the ordered power-consumption profile based on the ordered unit-rate index set;

computing an increment based on a minimum of the error and a difference between the maximum power level and the power level from the ordered power-consumption profile;

summing the power level from the ordered power-consumption profile and the increment to obtain an updated power level for the minimum power-consumption profile; and

subtracting the maximum power level from the power-consumption profile.

7. A method of reducing power consumption of data center comprising:

determining an optimum power-consumption profile based on a power-consumption profile of a virtual machine over a period of time and a unit-rate profile of electrical power cost over the period of time, wherein the optimum power-consumption profile minimizes power consumption of the virtual machine by substantially aligning minima of the optimum power-consumption profile with maximum unit-rate cost of the unit-rate profile and substantially aligning maxima of the optimum power-consumption profile with minimum unit-rate cost of the unit-rate profile; and

rescheduling the virtual machine over the same period with a workload having the optimum power-consumption profile.

8. The method of claim 7 wherein the power-consumption profile represents power consumption of the virtual machine periodically scheduled over time.

9. The method of claim 7 wherein workload associated with the optimum power-consumption profile equals workload associated with the power-consumption profile.

10. The method of claim 7 wherein the optimum power-consumption profile minimizes power cost of the virtual machine execution.

11. A method of reducing power consumption of data center comprising:

determining an optimum power-consumption profile based on a power-consumption profile of a virtual machine over a period of time and a unit-rate profile of electrical power cost over the period, wherein determining the optimum power-consumption profile further comprises;

computing a total workload based on the power-consumption profile;

ordering the unit-rate profile to generate an order unit-rate profile;

forming an ordered unit-rate index set from indices of the ordered unit-rate profile;

initializing a minimum power-consumption profile based on a minimum power level of the power-consumption profile;

ordering power levels of the power-consumption profile from smallest to largest in an ordered power-consumption profile; and

iteratively updating power levels of the minimum power-consumption profile to obtain the optimum power-consumption profile based on the ordered unit-rate index set and the ordered power-consumption profile; and

rescheduling the virtual machine over the period with a workload having the optimum power-consumption profile.

12. The method of claim 11 wherein iteratively updating power levels of the minimum power-consumption profile to obtain the optimum power-consumption profile further comprises:

for each iteration,

computing a workload based on the minimum power-consumption profile;

computing an error difference between the total workload and the workload;

determining a maximum power level in power-consumption profile;

reading a power level from the ordered power-consumption profile based on the ordered unit-rate index set;

computing an increment based on a minimum of the error and a difference between the maximum power level and the power level from the ordered power-consumption profile;

summing the power level from the ordered power-consumption profile and the increment to obtain an updated power level for the minimum power-consumption profile; and

subtracting the maximum power level from the power-consumption profile.

13. A non-transitory computer-readable medium encoded with machine-readable instructions that implement a method carried out by one or more processors of a computer system to perform the operations of:

determining an optimum power-consumption profile based on a power-consumption profile of a virtual machine over a period of time and a unit-rate profile of electrical power cost over the period of time, wherein the optimum power-consumption profile minimizes power consumption of the virtual machine by substantially aligning minima of the optimum power-consumption profile with maximum unit-rate cost of the unit-rate profile and substantially aligning maxima of the optimum power-consumption profile with minimum unit-rate cost of the unit-rate profile; and

rescheduling the virtual machine over the same period with a workload having the optimum power-consumption profile.

14. The medium of claim 13 wherein the power-consumption profile represents power consumption of the virtual machine periodically scheduled over time.

15. The medium of claim 13 wherein workload associated with the optimum power-consumption profile equals workload associated with the power-consumption profile.

16. The medium of claim 13 wherein the optimum power-consumption profile minimizes power cost of the virtual machine execution.

17. A non-transitory computer-readable medium encoded with machine-readable instructions that implement a method carried out by one or more processors of a computer system to perform the operations of:

determining an optimum power-consumption profile based on a power-consumption profile of a virtual machine over a period of time and a unit-rate profile of electrical power cost over the period, wherein determining the optimum power-consumption profile further comprises;

computing a total workload based on the power-consumption profile;

ordering the unit-rate profile to generate an order unit-rate profile;

forming an ordered unit-rate index set from indices of the ordered unit-rate profile;

initializing a minimum power-consumption profile based on a minimum power level of the power-consumption profile;

ordering power levels of the power-consumption profile from smallest to largest in an ordered power-consumption profile; and

iteratively updating power levels of the minimum power-consumption profile to obtain the optimum power-consumption profile based on the ordered unit-rate index set and the ordered power-consumption profile; and

rescheduling the virtual machine over the period with a workload having the optimum power-consumption profile.

18. The medium of claim 17 wherein iteratively updating power levels of the minimum power-consumption profile to obtain the optimum power-consumption profile further comprises:

for each iteration,

computing a workload based on the minimum power-consumption profile;

computing an error difference between the total workload and the workload;

determining a maximum power level in power-consumption profile;

reading a power level from the ordered power-consumption profile based on the ordered unit-rate index set;

computing an increment based on a minimum of the error and a difference between the maximum power level and the power level from the ordered power-consumption profile;

summing the power level from the ordered power-consumption profile and the increment to obtain an updated power level for the minimum power-consumption profile; and

subtracting the maximum power level from the power-consumption profile.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0314 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 26, 2014
From: GAURAV, KUMAR; PANNEM, HEMANTH KUMAR; KAMBIVELU, BHASKARDAS
To: VMWARE, INC.
Reel/Frame 034266/0668 →