IP Library Granted Patent US 7,281,146
Granted Patent B2
US 7,281,146 · App. 10/882,549 · Granted Oct 9, 2007

Dynamic power requirement budget manager

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 7,281,146
App. No.
10/882,549
Granted
Oct 9, 2007
Kind
B2
Abstract

A system and method to determine a presence of devices coupled to one a more peripheral buses in a system, and dynamically reducing power consumption of a subset of the devices that are present, based on correlating application/device association and a predetermined power source budget. In one embodiment, the reducing of the power consumption is performed dynamically by having an agent reduce the power limit in a device register(s) corresponding to the subset of devices. Furthermore, in one embodiment, the power resource budget is based at least in part on a user-selected power/performance level.

Claims (52)

1. A method comprising:

polling to determine a presence of devices coupled to a peripheral bus in a system;

after the polling, calculating power requirements of device slots currently containing the devices;

after calculating power requirements of the device slots currently containing devices, generating a prioritized list of the device slots currently containing devices; and

dynamically reducing power consumption of a subset of the devices based on a predetermined power resource budget and the prioritized list of the device slots currently containing devices.

2. The method of claim 1 , wherein the device slots have corresponding device registers to identify a limit of power to be provided to a respective device slot.

3. The method of claim 1 , wherein the dynamically reducing power consumption of the subset includes, a power budget manager agent reducing a power limit in a corresponding device register for each device slot of the subset.

4. The method of claim 3 , wherein the predetermined power resource budget is based at least in part on a user selected performance level.

5. The method of claim 4 , wherein the power resource budget is based on an application to be executed by the system.

6. The method of claim 5 , wherein in response to one of a completion of execution of an application, and removal of a power consuming device, the power budget manager increasing power limits of one or more of the device slots.

7. The method of claim 1 , wherein the bus includes at a Peripheral Component Interconnect (PCI) Express bus.

8. The method of claim 1 further comprising in response to detecting a device has been added to the bus, verifying enough power can be provided to a device slot containing the added device, before enabling the device.

9. The method of claim 8 , wherein the added device is a hot plug capable device.

10. The method of claim 9 , wherein the system is one of a mobile computer system.

11. A machine-readable medium having stored thereon a set of instructions, which when executed, perform a machine-readable medium comprising:

polling to determine a presence of devices coupled to a peripheral bus in a system;

after the polling, calculating power requirements of device slots currently containing the devices;

after calculating power requirements of the device slots currently containing devices, generating a prioritized list of the device slots currently containing devices; and

dynamically reducing power consumption of a subset of the devices based on a predetermined power resource budget and the prioritized list of the device slots currently containing devices.

12. The machine-readable medium of claim 11 , including additional instructions, when executed, perform the method further comprising, after the polling, calculating power requirements of device slots currently containing the devices.

13. The machine-readable medium of claim 12 , wherein the device slots have corresponding device registers to identify a limit of power to be provided to a respective device slot.

14. The machine-readable medium of claim 12 , wherein the bus includes at a Peripheral Component Interconnect (PCI) Express bus.

15. The machine-readable medium of claim 12 , including additional instructions, when executed, perform the method further comprising, after calculating power requirements of the device slots currently containing devices, generating a prioritized list of the device slots currently containing devices.

16. The machine-readable medium of claim 12 , including additional instructions, when executed, perform the method further comprising, in response to detecting a device has been added to the bus, verifying enough power can be provided to a device slot containing the added device, before enabling the device.

17. The machine-readable medium of claim 11 , wherein the dynamically reducing power consumption of the subset includes, a power budget manager agent reducing a power limit in a corresponding device register for each device slot of the subset.

18. The machine-readable medium of claim 17 , wherein the predetermined power resource budget is based at least in part on a user selected performance level.

19. A system comprising:

A processor,

a network interface coupled to the processor; and

a machine-readable medium having stored thereon a set of instructions which when executed cause a system to perform a method comprising:

polling to determine a presence of devices coupled to a peripheral bus in a system;

after the polling, calculating power requirements of device slots currently containing the devices;

after calculating power requirements of the device slots currently containing devices, generating a prioritized list of the device slots currently containing devices; and

dynamically reducing power consumption of a subset of the devices based on a predetermined power resource budget and the prioritized list of the device slots currently containing devices.

20. The system of claim 19 , wherein the machine-readable medium includes additional instructions, which when executed, perform the method further comprising, the dynamically reducing power consumption of the subset includes, a power budget manager agent reducing a power limit in a corresponding device register for each device slot of the subset.

21. The system of claim 20 , wherein the power resource budget is based on an application to be executed by the system.

22. The system of claim 21 , wherein the machine-readable medium includes additional instructions, which when executed, perform the method further comprising, in response to one of a completion of execution of an application, and removal of a power consuming device, the power budget manager increasing power limits of one or more of the device slots.

23. A method comprising:

calculating power requirements of device slots on a Peripheral Component Interconnect (PCI) Express bus that currently contain devices;

after calculating power requirements of the device slots currently containing devices, generating a prioritized list of the device slots currently containing devices; and

reducing a power limit in corresponding device registers for a subset of the device slots currently containing devices, based on a predetermined power resource budget and the prioritized list of the device slots currently containing devices.

24. The method of claim 23 , further comprising generating a prioritized list of the device slots currently containing devices, based on at least one of an application being executed, an application to be executed, a preference selected by a user of a computer system, and a pre-configured preference of the system.

25. The method of claim 23 , further comprising, in response to one of a completion of execution of an application, and removal of a power consuming device, increasing power limits of one or more of the device slots.

26. A system comprising:

A processor,

a network interface coupled to the processor; and

a machine-readable medium having stored thereon a set of instructions which when executed cause a system to perform a method comprising:

calculating power requirements of device slots on a Peripheral Component Interconnect (PCI) Express bus that currently contain devices;

after calculating power requirements of the device slots currently containing devices, generating a prioritized list of the device slots currently containing devices; and

reducing a power limit in corresponding device registers for a subset of the device slots currently containing devices, based on a predetermined power resource budget and the prioritized list of the device slots currently containing devices.

27. The system of claim 26 , wherein the machine-readable medium includes additional instructions, which when executed, perform the method further comprising, generating a prioritized list of the device slots currently containing devices, based on at least one of an application being executed, an application to be executed, a preference selected by a user of a computer system, and a pre-configured preference of the system.

28. The system of claim 26 , wherein the machine-readable medium includes additional instructions, which when executed, perform the method further comprising, in response to one of a completion of execution of an application, and removal of a power consuming device, increasing power limits of one or more of the device slots.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2022
From: INTEL CORPORATION
To: TAHOE RESEARCH, LTD.
Reel/Frame 061175/0176 →