IP Library Granted Patent US 8,458,499
Granted Patent B2
US 8,458,499 · App. 12/537,933 · Granted Jun 4, 2013

Method for reducing power state in a computer system out-of-band when a request for reducing the power state is not immediately serviceable in band according to a priority of the request

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,458,499
App. No.
12/537,933
Granted
Jun 4, 2013
Kind
B2
Abstract

One embodiment provides a method of managing power in a computer system. A device of the computer system is operated at a selected power-state. The power consumption of the computer system is monitored. If the power consumption of the computer system is approaching or has exceeded a power cap selected for the computer system, then a request to reduce the power-state for the device is generated in response. The operating system is used to service the request to reduce the power-state according to the priority of the request. The reduced power state is forced out-of-band following the request to reduce the power-state if the request is not immediately serviceable by the operating system. Different approaches can be taken to force the reduced power state, using, for example, system management mode or a platform environment control interface.

Claims (49)

1. A method of managing power in a computer system, comprising:

operating a device of the computer system at a selected power-state;

monitoring the power consumption of the computer system;

dynamically generating a request to reduce the power-state for the device in response to identifying that the power consumption of the computer system is approaching a power cap selected for the computer system; and

servicing each request to reduce the power-state in-band for which the request is immediately serviceable in-band according to the priority of the request and forcing a reduced power state out-of-band in response to the generation of each request for which the request is not immediately serviceable in-band according to the priority of the request.

2. The method of claim 1 , wherein the step of generating a request to reduce the power-state for the device comprises generating a service control interrupt to reduce the power-state.

3. The method of claim 1 , wherein the step of forcing the reduced power state out-of-band comprises:

generating a service management interrupt;

entering a system management mode temporarily suspending execution of an operating system; and

using software separate from the operating system to reduce the power-state.

4. The method of claim 1 , wherein the step of reducing the power state of the device comprises reducing one or both of a frequency and a voltage of the device.

5. The method of claim 1 , further comprising:

forcing an immediate power state reduction out-of-band in response to identifying that the power consumption of the computer system has exceeded the power cap; and

subsequently informing the operating system of the reduced power-state.

6. The method of claim 5 , further comprising using a Platform Environment Control Interface to force the immediate power state reduction out-of-band.

7. The method of claim 5 , further comprising:

setting a lock-bit out-of-band, disallowing in-band writes to a power-state register and subsequently forcing the immediate power state reduction;

generating a service control interrupt after forcing the power state reduction; and

subsequently releasing the lock-bit.

8. The method of claim 7 , further comprising:

performing a handshake between an operating system and a baseboard management controller; and

releasing the lock-bit in response to the handshake.

9. The method of claim 8 , further comprising initiating a power saving mode upon releasing the lock-bit, including setting the power state equal to or lower than a maximum platform-selected power state.

10. The method of claim 6 , further comprising using the Platform Environment Control Interface to select a maximum throttle setting of the device.

11. A computer program product including computer usable program code embodied on a non-transitory computer usable storage medium for managing power in a computer system, the computer program product including:

computer usable program code for selecting a power state at which to operate a device of the computer system;

computer usable program code for monitoring the power consumption of the computer system;

computer usable program code for dynamically generating a request to reduce the power-state for the device in response to identifying that the power consumption of the computer system is approaching a power cap selected for the computer system; and

computer usable program code included with an operating system for servicing each request to reduce the power-state in-band for which the request is immediately serviceable in-band according to the priority of the request; and

computer usable program code not included with the operating system for forcing a reduced power state out-of-band in response to the generation of each request for which the request is not immediately serviceable in-band according to the priority of the request.

12. The computer program product of claim 11 , wherein the computer usable program code for generating a request to reduce the power-state for the device comprises computer usable program code for generating a service control interrupt to reduce the power-state.

13. The computer program product of claim 11 , wherein the computer usable program code for forcing the reduced power state out-of-band comprises:

computer usable program code for generating a service management interrupt;

computer usable program code for entering a system management mode temporarily suspending execution of an operating system; and

computer usable program code not included with the operating system for reducing the power-state.

14. The computer program product of claim 11 , wherein the computer usable program code for reducing the power state of the device comprises computer usable program code for reducing one or both of a frequency and a voltage of the device.

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

computer usable program code not included with the operating system for forcing an immediate power state reduction out-of-band in response to identifying that the power consumption of the computer system has exceeded the power cap; and

computer usable program code for subsequently informing the operating system of the reduced power-state.

16. The computer program product of claim 15 , further comprising computer usable program code not included with the operating system for forcing the immediate power state reduction out-of-band along a Platform Environment Control Interface.

17. The computer program product of claim 15 , further comprising:

computer usable program code not included with the operating system for setting a lock-bit out-of-band, disallowing in-band writes to a power-state register and subsequently forcing the immediate power state reduction;

computer usable program code for generating a service control interrupt after forcing the power state reduction; and

computer usable program code for subsequently releasing the lock-bit.

18. The computer program product of claim 17 , further comprising:

computer usable program code for performing a handshake between an operating system and a baseboard management controller; and

computer usable program code for releasing the lock-bit in response to the handshake.

19. The computer program product of claim 18 , further comprising computer usable program code for initiating a power saving mode upon releasing the lock-bit, including setting the power state equal to or lower than a maximum platform-selected power state.

20. The computer program product of claim 16 , further comprising computer usable program code for selecting a maximum throttle setting of the device using the Platform Environment Control Interface.

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 Aug 10, 2009
From: BREY, THOMAS M.; DHOLAKIA, AJAY; DUNHAM, SCOTT N.; KOCHAR, SUMEET
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 023071/0280 →