IP Library › Granted Patent US 9,535,483
Granted Patent B2
US 9,535,483 · App. 13/719,880 · Granted Jan 3, 2017

Adaptively disabling and enabling sleep states for power and performance

Inventors: Alexander W. Min (Portland, OR); Ren Wang (Portland, OR); Jr-Shian Tsai (Portland, OR); Tsung-Yuan Tsung-Yuan Tai (Portland, OR)
Assignee: Intel Corporation
G06F1/3206
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,535,483
App. No.
13/719,880
Granted
Jan 3, 2017
Kind
B2
Abstract

Methods and systems may provide for determining whether a runtime disablement condition is met with respect to a sleep state and disabling the sleep state if the runtime disablement condition is met. Additionally, the sleep state may be enabled if a runtime reinstatement condition is met. In one example, determining whether the runtime disablement condition is met includes determining a false entry rate for the sleep state, and comparing the false entry rate to an energy-based threshold, wherein the sleep state is disabled if the false entry rate exceeds the energy-based threshold.

Claims (64)

1. A mobile platform comprising:

a battery to provide power to the mobile platform; and

an input output (IO) module including,

comparison logic to determine whether a runtime disablement condition is met with respect to a sleep state of the mobile platform, wherein the runtime disablement condition is based on one or more of a false entry rate for the sleep state, an interrupt frequency for the sleep state, or a latency for the sleep state, and wherein the sleep state is selected from one of a plurality of sleep states having different levels that range from shallow to deep,

disablement logic to adaptively disable the sleep state if the runtime disablement condition is met, wherein disabling the sleep state is to remove the sleep state from contention as a selected sleep state to reduce the likelihood that a false entry will occur, and

enablement logic to adaptively enable the sleep state if a runtime reinstatement condition is met, wherein enabling the sleep state is to place the sleep state into contention as a selected sleep state to increase the likelihood that an optimal sleep state is selected.

2. The mobile platform of claim 1 , wherein the comparison logic is to,

determine a false entry rate for the sleep state, and

compare the false entry rate to an energy-based threshold to determine whether the runtime disablement condition is met, wherein the sleep state is to be disabled if the false entry rate exceeds the energy-based threshold.

3. The mobile platform of claim 2 , wherein the comparison logic includes a ratio module to determine a ratio of false entries into the sleep state to total entries into the sleep state over a historical period to determine the false entry rate.

4. The mobile platform of claim 2 , wherein the comparison logic includes a prediction module to predict the false entry rate based at least in part on a previous interrupt arrival pattern.

5. The mobile platform of claim 2 , further including a memory to store a lookup table, wherein the comparison logic is to obtain the energy-based threshold from the lookup table.

6. The mobile platform of claim 1 , wherein the comparison logic is to,

determine an interrupt frequency for the sleep state, and

compare the interrupt frequency to an interrupt threshold to determine whether the runtime disablement condition is met, wherein the sleep state is to be disabled if the interrupt frequency exceeds the interrupt threshold.

7. The mobile platform of claim 1 , wherein the comparison logic is to,

determine a latency for the sleep state, and

compare the latency to a latency threshold to determine whether the runtime disablement condition is met, wherein the sleep state is to be disabled if the latency exceeds the latency threshold.

8. The mobile platform of claim 1 , wherein the sleep state is to be enabled if one or more of a timer has expired, an interrupt frequency falls below a reinstatement threshold, and a workload has been completed.

9. The mobile platform of claim 1 , further including a processor, wherein the processor is to be placed in the sleep state.

10. An apparatus comprising:

comparison logic to determine whether a runtime disablement condition is met with respect to a sleep state of a mobile platform, wherein the runtime disablement condition is based on one or more of a false entry rate for the sleep state, an interrupt frequency for the sleep state, or a latency for the sleep state, and wherein the sleep state is selected from one of a plurality of sleep states having different levels that range from shallow to deep;

disablement logic to adaptively disable the sleep state if the runtime disablement condition is met, wherein disabling the sleep state is to remove the sleep state from contention as a selected sleep state to reduce the likelihood that a false entry will occur; and

enablement logic to adaptively enable the sleep state if a runtime reinstatement condition is met, wherein enabling the sleep state is to place the sleep state into contention as a selected sleep state to increase the likelihood that an optimal sleep state is selected.

11. The apparatus of claim 10 , wherein the comparison logic is to,

determine a false entry rate for the sleep state, and

compare the false entry rate to an energy-based threshold to determine whether the runtime disablement condition is met, wherein the sleep state is to be disabled if the false entry rate exceeds the energy-based threshold.

12. The apparatus of claim 11 , wherein the comparison logic includes a ratio module to determine a ratio of false entries into the sleep state to total entries into the sleep state over a historical period to determine the false entry rate.

13. The apparatus of claim 11 , wherein the comparison logic includes a prediction module to predict the false entry rate based at least in part on a previous interrupt arrival pattern.

14. The apparatus of claim 11 , wherein the comparison logic is to obtain the energy-based threshold from a lookup table.

15. The apparatus of claim 10 , wherein the comparison logic is to,

determine an interrupt frequency for the sleep state, and

compare the interrupt frequency to an interrupt threshold to determine whether the runtime disablement condition is met, wherein the sleep state is to be disabled if the interrupt frequency exceeds the interrupt threshold.

16. The apparatus of claim 10 , wherein the comparison logic is to,

determine a latency for the sleep state, and

compare the latency to a latency threshold to determine whether the runtime disablement condition is met, wherein the sleep state is to be disabled if the latency exceeds the latency threshold.

17. The apparatus of claim 10 , wherein the sleep state is to be enabled if one or more of a timer has expired, an interrupt frequency falls below a reinstatement threshold, and a workload has been completed.

18. At least one non-transitory machine readable storage medium comprising a set of instructions which, if executed by at least one processor, cause a computer to:

determine whether a runtime disablement condition is met with respect to a sleep state of a mobile platform, wherein the runtime disablement condition is based on one or more of a false entry rate for the sleep state, an interrupt frequency for the sleep state, or a latency for the sleep state, and wherein the sleep state is selected from one of a plurality of sleep states having different levels that range from shallow to deep;

adaptively disable the sleep state if the runtime disablement condition is met, wherein disabling the sleep state is to remove the sleep state from contention as a selected sleep state to reduce the likelihood that a false entry will occur; and

adaptively enable the sleep state if a runtime reinstatement condition is met, wherein enabling the sleep state is to place the sleep state into contention as a selected sleep state to increase the likelihood that an optimal sleep state is selected.

19. The at least one non-transitory machine readable storage medium of claim 18 , wherein the instructions, if executed, cause a computer to:

determine a false entry rate for the sleep state; and

compare the false entry rate to an energy-based threshold to determine whether the runtime disablement condition is met, wherein the sleep state is to be disabled if the false entry rate exceeds the energy-based threshold.

20. The at least one non-transitory machine readable storage medium of claim 19 , wherein the instructions, if executed, cause a computer to determine a ratio of false entries into the sleep state to total entries into the sleep state over a historical period to determine the false entry rate.

21. The at least one non-transitory machine readable storage medium of claim 19 , wherein the instructions, if executed, cause a computer to predict the false entry rate based at least in part on a previous interrupt arrival pattern.

22. The at least one non-transitory machine readable storage medium of claim 19 , wherein the instructions, if executed, cause a computer to obtain the energy-based threshold from a lookup table.

23. The at least one non-transitory machine readable storage medium of claim 18 , wherein the instructions, if executed, cause a computer to:

determine an interrupt frequency for the sleep state; and

compare the interrupt frequency to an interrupt threshold to determine whether the runtime disablement condition is met, wherein the sleep state is to be disabled if the interrupt frequency exceeds the interrupt threshold.

24. The at least one non-transitory machine readable storage medium of claim 18 , wherein the instructions, if executed, cause a computer to:

determine a latency for the sleep state; and

compare the latency to a latency threshold to determine whether the runtime disablement condition is met, wherein the sleep state is to be disabled if the latency exceeds the latency threshold.

25. The at least one non-transitory machine readable storage medium of claim 18 , wherein the sleep state is to be enabled if one or more of a timer has expired, an interrupt frequency falls below a reinstatement threshold, and a workload has been completed.

26. A method comprising:

determining whether a runtime disablement condition is met with respect to a sleep state of a mobile platform, wherein the runtime disablement condition is based on one or more of a false entry rate for the sleep state, an interrupt frequency for the sleep state, or a latency for the sleep state, and wherein the sleep state is selected from one of a plurality of sleep states having different levels that range from shallow to deep;

adaptively disabling the sleep state if the runtime disablement condition is met, wherein disabling the sleep state is to remove the sleep state from contention as a selected sleep state to reduce the likelihood that a false entry will occur; and

adaptively enabling the sleep state if a runtime reinstatement condition is met, wherein enabling the sleep state is to place the sleep state into contention as a selected sleep state to increase the likelihood that an optimal sleep state is selected.

27. The method of claim 26 , wherein determining whether the runtime disablement condition is met includes:

determining a false entry rate for the sleep state; and

comparing the false entry rate to an energy-based threshold, wherein the sleep state is disabled if the false entry rate exceeds the energy-based threshold.

28. The method of claim 27 , wherein determining the false entry rate includes determining a ratio of false entries into the sleep state to total entries into the sleep state over a historical period.

29. The method of claim 27 , wherein determining the false entry rate includes predicting the false entry rate based at least in part on a previous interrupt arrival pattern.

30. The method of claim 27 , further including obtaining the energy-based threshold from a lookup table.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 15, 2013
From: MIN, ALEXANDER W.; WANG, REN; TSAI, JR-SHIAN; TAI, TSUNG-YUAN C.
To: INTEL CORPORATION
Reel/Frame 030216/0607 →
Continuity (1)
Related Publication 20140173314A1 · Jun 19, 2014