IP Library Granted Patent US 8,006,108
Granted Patent B2
US 8,006,108 · App. 11/936,923 · Granted Aug 23, 2011

Dynamic selection of group and device power limits

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,006,108
App. No.
11/936,923
Granted
Aug 23, 2011
Kind
B2
Abstract

A variable group power limit is enforced to limit the net power consumption of a group of devices in a computer system, and a variable device power limit enforced on each device is independently adjustable to satisfy the current group power limit. The device power limits are dynamically selected according to a power management method that selectively reduces the device power limits of lower-utilization devices and increases the device power limits of higher-utilization devices.

Claims (40)

1. A method of limiting power consumption by an electronic system having a plurality of power-consuming electronic devices, the method comprising:

selecting a group power limit for the plurality of devices;

selecting and enforcing a device power limit for each device and dynamically adjusting the device power limits such that the sum of the device power limits of the group of devices does not exceed the group power limit; and

wherein the step of dynamically adjusting the device power limits includes one or both of identifying a subset of lower-utilization devices and decreasing the device power limit of one or more of the lower-utilization devices or identifying a subset of higher-utilization devices and increasing the device power limits of one or more of the higher-utilization devices, wherein the utilization of each device is the ratio of the power consumed by the device to the current device power limit.

2. The method of claim 1 , further comprising:

dynamically adjusting the group power limit;

comparing the dynamically-adjusted group power limit with the sum of the device power limits;

decreasing the device power limit of one or more of the lower-utilization devices in response to the group power limit being less than the sum of the device power limits; and

increasing the device power limit of one or more of the higher-utilization device in response to the group power limit being larger than the sum of the device power limits.

3. The method of claim 2 , further comprising:

decreasing the device power limit of the one or more of the lower-utilization devices by the smallest of (a) a predetermined constant value, (b) the difference between the sum of the device power limits and the group power limit, and (c) the difference between the device power limit of the current least-utilized device and a minimum device power limit of the current least-utilized device.

4. The method of claim 3 , further comprising repeating the step of decreasing the device power limit until the sum of the device power limits is substantially equal to the group power limit.

5. The method of claim 2 , further comprising:

increasing the device power limit of one of the higher-utilization devices by the smallest of (a) a predetermined constant value, (b) the difference between the group power limit and the sum of the device power limits, and (c) the difference between a maximum power capacity of the current most-utilized device and the device power limit of the current most-utilized device.

6. The method of claim 5 , further comprising repeating the step of increasing the device power limit until the sum of the device power limits is substantially equal to the group power limit.

7. The method of claim 1 , further comprising enforcing the device power limits on the devices by performing processor clock gating, reducing processor supply voltages, reducing processor clock frequency, or migrating workload between the devices.

8. The method of claim 1 , wherein the subset of lower-utilization devices is the single, least-utilized device, and the subset of higher-utilization devices is the single, most-utilized device.

9. A computer program product including computer usable program code embodied on a non-transitory computer usable medium for managing power in an electronic system having a plurality of power-consuming electronic devices, the computer program product comprising:

instructions for selecting a group power limit for the plurality of devices;

instructions for selecting and enforcing a device power limit for each device and dynamically adjusting the device power limits such that the sum of the device power limits of the group of devices is within the group power limit; and

wherein the instructions for dynamically adjusting the device power limits includes instructions for identifying a current least-utilized device and decreasing the device power limit of the current least-utilized device or identifying a current most-utilized device and increasing the device power limit of the current most-utilized device, wherein the utilization of each device is the ratio of the power consumed by the device to the current device power limit.

10. The computer program product of claim 9 , further comprising:

instructions for dynamically adjusting the group power limit;

instructions for comparing the dynamically-adjusted group power limit with the sum of the device power limits;

instructions for decreasing the device power limit of the current least-utilized device in response to the group power limit being less than the sum of the device power limits; and

instructions for increasing the device power limit of the current most-utilized device in response to the group power limit being larger than the sum of the device power limits.

11. The computer program product of claim 10 , further comprising:

instructions for decreasing the device power limit of the current least-utilized device by the smallest of (a) a predetermined constant value, (b) the difference between the sum of the device power limits and the group power limit, and (c) the difference between the device power limit of the current least-utilized device and a minimum device power limit of the current least-utilized device.

12. The computer program product of claim 11 , further comprising instructions for repeating the step of decreasing the device power limit until the sum of the device power limits is substantially equal to the group power limit.

13. The computer program product of claim 10 , further comprising:

instructions for increasing the device power limit of the current most-utilized device by the smallest of (a) a predetermined constant value, (b) the difference between the group power limit and the sum of the device power limits, and (c) the difference between a maximum power capacity of the current most-utilized device and the device power limit of the current most-utilized device.

14. The computer program product of claim 13 , further comprising instructions for repeating the step of increasing the device power limit until the sum of the device power limits is substantially equal to the group power limit.

15. The computer program product of claim 9 , further comprising instructions for enforcing the device power limits on the devices by performing processor clock gating, reducing processor supply voltages, reducing processor clock frequency, or migrating workload between the devices.

16. A power-managed electronic system, comprising:

a plurality of interconnected electronic devices each including a throttling mechanism for selectively limiting the power consumption of the device within an associated device power limit, and a power meter circuit for detecting the power consumption of the electronic device and outputting a power consumption signal representative of the detected power consumption;

a power supply for supplying a variable amount of power to each of the electronic devices;

a power management module in communication with the power meters for receiving the power consumption signals, computing the utilization of each device in terms of its power consumption, and dynamically adjusting the device power limits by identifying a subset of lower-utilization devices and decreasing the device power limit of one or more of the lower-utilization devices or identifying a subset of higher-utilization devices and increasing the device power limit of one or more of the higher-utilization devices, wherein the utilization of each device is the ratio of the power consumed by the device to the current device power limit, such that the sum of the device power limits is within the group power limit; and

a local controller residing on each device and configured for enforcing the device power limit selected for that device.

17. The power-managed electronic system of claim 16 , wherein the local controller comprises a baseboard management controller.

18. The power-managed electronic system of claim 16 , wherein the local controller is configured for selectively throttling processor or memory, placing subsystems into power-saving modes of operation, powering off unused circuitry, reducing a clock frequency or operating voltage of the processors, introducing wait or hold states into the activity of the processors, performing processor clock gating, reducing processor supply voltages, or migrating workload between the devices, to enforce the device power limit.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2014
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: LENOVO INTERNATIONAL LIMITED
Reel/Frame 034194/0291 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 8, 2007
From: BREY, THOMAS M., MR.; PIAZZA, WILLIAM JOSEPH, MR.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 020084/0846 →