IP Library › Granted Patent US 8,862,918
Granted Patent B2
US 8,862,918 · App. 13/174,958 · Granted Oct 14, 2014

Efficient frequency boost operation

Inventors: Baskaran Ganesan (Bangalore, IN); James S. Burns (Cupertino, CA); Suresh Sugumar (Bangalore, IN); Devadatta V. Bodas (Federal Way, WA); Sundaravarathan R. Iyengar (Federal Way, WA); Feranak Nelson (Olympia, WA); Dheemanth Nagaraj (Bangalore, IN); Russell J. Fenger (Beaverton, OR)
Assignee: Intel Corporation
G06F1/324G06F1/08
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,862,918
App. No.
13/174,958
Granted
Oct 14, 2014
Kind
B2
Abstract

Systems and methods of operating a computing system may involve identifying a plurality of state values, wherein each state value corresponds to a computing thread associated with a processor. An average value can be determined for the plurality of state values, wherein a determination may be made as to whether to grant a frequency boost request based at least in part on the average value.

Claims (94)

1. A computer implemented method comprising:

identifying a plurality of state values, wherein each state value corresponds to a computing thread associated with a processor, and wherein, for one or more computing threads, identifying a state value includes,

sampling a thread performance state on a periodic basis,

conducting a comparison between the thread performance state and a performance state associated with a frequency boost request, and

modifying a state counter corresponding to the computing thread based at least in part on the comparison;

determining an average value for the plurality of state values;

granting a frequency boost request if the average value exceeds a threshold; and

denying the frequency boost request if the average value does not exceed the threshold.

2. The method of claim 1 , further including decreasing the threshold from a first level to a second level if the frequency boost request is granted.

3. The method of claim 2 , further including increasing the threshold from the second level to the first level if the frequency boost request is denied.

4. The method of claim 1 , wherein modifying the state counter includes at least one of incrementing and decrementing the state counter by a variable step value.

5. The method of claim 4 , wherein, for one or more computing threads, identifying a state value includes:

sampling a thread power state;

conducting an additional comparison between the thread power state and a power state associated with the frequency boost request; and

modifying the state counter based at least in part on the additional comparison.

6. The method of claim 4 , further including:

setting the state counter to a ceiling value if the state counter exceeds the ceiling value; and

setting the state counter to a floor value if the state counter falls below the floor value.

7. A computer readable storage medium comprising a set of instructions which, if executed by a processor, cause a computer to:

identify a plurality of state values, wherein each state value is to correspond to a computing thread;

determine an average value for the plurality of state values;

determine whether to grant a frequency boost request based at least in part on the average value;

grant the frequency boost request if the average value exceeds a threshold; and

deny the frequency boost request if the average value does not exceed the threshold.

8. The medium of claim 7 , wherein the instructions, if executed, cause a computer to decrease the threshold from a first level to a second level if the frequency boost request is granted.

9. The medium of claim 8 , wherein the instructions, if executed, cause a computer to increase the threshold from the second level to the first level if the frequency boost request is denied.

10. A computer readable storage medium comprising a set of instructions which, if executed by a processor, cause a computer to:

identify a plurality of state values, wherein each state value is to correspond to a computing thread;

determine an average value for the plurality of state values; and

determine whether to grant a frequency boost request based at least in part on the average value;

wherein, for one or more computing threads, the instructions, if executed, cause a computer to:

sample a thread performance state on a periodic basis;

conduct a comparison between the thread performance state and a performance state associated with the frequency boost request; and

modify a state counter corresponding to the computing thread based at least in part on the comparison.

11. The medium of claim 10 , wherein the instructions, if executed, cause a computer to at least one of increment and decrement the state counter by a variable step value.

12. The medium of claim 10 , wherein, for one or more computing threads, the instructions, if executed, cause a computer to:

sample a thread power state;

conduct an additional comparison between the thread power state and a power state associated with the frequency boost request; and

modify the state counter based at least in part on the additional comparison.

13. The medium of claim 12 , wherein the instructions, if executed, cause a computer to:

set the state counter to a ceiling value if the state counter exceeds the ceiling value; and

set the state counter to a floor value if the state counter falls below the floor value.

14. A computer implemented method comprising:

identifying a plurality of state values, wherein each state value corresponds to a computing thread associated with a processor;

determining an average value for the plurality of state values;

determining whether to grant a frequency boost request based at least in part on the average value;

granting the frequency boost request if the average value exceeds a threshold; and

denying the frequency boost request if the average value does not exceed the threshold.

15. The method of claim 14 , further including decreasing the threshold from a first level to a second level if the frequency boost request is granted.

16. The method of claim 15 , further including increasing the threshold from the second level to the first level if the frequency boost request is denied.

17. A computer implemented method comprising:

identifying a plurality of state values, wherein each state value corresponds to a computing thread associated with a processor;

determining an average value for the plurality of state values; and

determining whether to grant a frequency boost request based at least in part on the average value;

wherein, for one or more computing threads, identifying state value includes:

sampling a thread performance state on a periodic basis;

conducting a comparison between the thread performance state and a performance state associated with the frequency boost request; and

modifying a state counter corresponding to the computing thread based at least in part on the comparison.

18. The method of claim 17 , wherein modifying the state counter includes at least one of incrementing and decrementing the state counter by a variable step value.

19. The method of claim 17 , wherein, for one or more computing threads, identifying a state value includes:

sampling a thread power state;

conducting an additional comparison between the thread power state and a power state associated with the frequency boost request; and

modifying the state counter based at least in part on the additional comparison.

20. The method of claim 19 , further including:

setting the state counter to a ceiling value if the state counter exceeds the ceiling value; and

setting the state counter to a floor value if the state counter falls below the floor value.

21. A system comprising:

a processor; and

logic to,

identify a plurality of state values, wherein each state value is to correspond to a computing thread associated with the processor,

determine an average value for the plurality of state values,

determine whether to grant a frequency boost request based at least in part on the average value,

grant the frequency boost request if the average value exceeds a threshold, and

deny the frequency boost request if the average value does not exceed the threshold.

22. The system of claim 21 , wherein the logic is to decrease the threshold from a first level to a second level if the frequency boost request is granted.

23. The system of claim 22 , wherein the logic is to increase the threshold from the second level to the first level if the frequency boost request is denied.

24. A system comprising:

a processor; and

logic to,

identify a plurality of state values, wherein each state value is to correspond to a computing thread associated with the processor,

determine an average value for the plurality of state values, and

determine whether to grant a frequency boost request based at least in part on the average value;

wherein, for one or more computing threads, the logic is to:

sample a thread performance state on a periodic basis,

conduct a comparison between the thread performance state and a performance state associated with the frequency boost request, and

modify a state counter corresponding to the computing thread based at least in part on the comparison.

25. The system of claim 24 , wherein the logic is to at least one of increment and decrement the state counter by a variable step value.

26. The system of claim 24 , wherein, for one or more computing threads, the logic is to,

sample a thread power state,

conduct an additional comparison between the thread power state and a power state associated with the frequency boost request, and

modify the state counter based at least in part on the additional comparison.

27. The system of claim 26 , wherein the logic is to,

set the state counter to a ceiling value if the average value exceeds the ceiling value, and

set the state counter to a floor value if the average value falls below the floor value.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 21, 2014
From: GANESAN, BASKARAN; BURNS, JAMES S.; SUGUMAR, SURESH; BODAS, DEVADATTA V.; IYENGAR, SUNDARAVARATHAN; NELSON, FERANAK; NAGARAJ, DHEEMANTH; FENGER, RUSSELL J.
To: INTEL CORPORATION
Reel/Frame 033347/0950 →
Continuity (1)
Related Publication 20130007475A1 · Jan 3, 2013