Non-linear Processor Idle State Selection for Power Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computing systems use a linear promotion and demotion scheme for processor idle states, which does not leverage recent advances in hardware technology to minimize power consumption, potentially affecting system responsiveness and user experience.

Innovation Solution

A method that collects data from various sources to identify a target idle state for the processor, allowing direct transition to that state without going through intermediate states, using a non-linear scheme that considers upcoming tasks and hardware attributes to optimize power management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If a higher C-state is used to save more power, then power consumption is reduced, but system responsiveness deteriorates due to greater latency overhead

Engineering Contradiction:
Improvepower consumptionVSAvoidsystem responsiveness
Core Design Contradiction:
Use of energy by moving objectVSSpeed

Solution Approach 1:

The patent implements dynamic C-state selection that adapts to current system conditions and workload characteristics. Instead of using a fixed linear promotion/demotion scheme, the system dynamically determines the appropriate target C-state based on multiple factors including workload type, predicted idle duration, and hardware capabilities, allowing optimal balance between power savings and responsiveness

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of C-state transition depth by introducing non-linear promotion and demotion schemes. The system can skip intermediate C-states and transition directly to the appropriate target state, changing the transition parameter from sequential to conditional-based depth selection, thereby optimizing both power consumption and wake-up latency

Inventive Principle:
Principle #35Parameter changes

2Device complexity

If a linear promotion and demotion scheme is used, then system simplicity is maintained, but power savings are insufficient due to not taking advantage of recent hardware advances

Engineering Contradiction:
Improvestate transition scheme complexityVSAvoidpower savings
Core Design Contradiction:
Device complexityVSUse of energy by moving object

Solution Approach 1:

The patent performs preliminary analysis of workload characteristics and predicts future idle periods before making C-state transition decisions. By collecting data from multiple sources and analyzing patterns in advance, the system can proactively select the optimal target C-state, preparing for transitions that maximize power savings while accounting for upcoming tasks

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a feedback mechanism that continuously monitors system behavior, workload patterns, and power consumption effects. This feedback is used to refine C-state selection algorithms and adjust transition policies, creating a learning system that improves power savings over time while adapting to changing hardware capabilities and usage patterns

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS7490256B2Identifying a target processor idle state
Publication Date: 2009.02.10 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7490256B2 patent drawing
  • US7490256B2 patent drawing
  • US7490256B2 patent drawing

AI summary

Embodiments of the present invention are directed at identifying an idle state for a processor that minimizes power consumption. In accordance with one embodiment, a method for identifying a target idle state that does not require a linear progression into any intermediate states is provided. More specifically the method includes collecting data from a plurality of data sources that describes activities occurring on the computer and/or attributes of the hardware platform. Then, using the collected data, a target idle state for the processor is calculated. Finally, if the current idle state of the processor is different than the target idle state, the method causes the idle state of the processor to be changed to the target idle state.