Processor Core Power Steering Mechanism

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current power management strategies in multi-core processors, such as ACPI C-states and DVFS, lead to inefficient power consumption due to frequent wake-ups of large cores for trivial tasks, which can be costly in terms of both latency and power, especially in heterogeneous environments.

Innovation Solution

Implementing a power control mechanism that steers all wake-up signals to smaller, more power-efficient cores, which are transparent to the operating system, allowing these cores to handle minor tasks while keeping larger cores in low power states longer, thereby reducing overall power consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a core is woken from a low power state to perform simple operations, then the operation can be completed, but power consumption increases and latency is incurred due to the state transition

Engineering Contradiction:
Improveoperation completionVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The processor is divided into multiple cores with different power efficiency characteristics. Small cores are designated for handling simple operations and interrupts, while large cores handle complex tasks. This segmentation allows the system to route wake-up signals appropriately, keeping large cores in low power states longer and reducing overall power consumption during simple operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A power control mechanism acts as an intermediary between wake-up signals and processor cores. This mechanism intercepts wake-up signals and intelligently routes them to appropriate small cores that can handle simple operations, preventing unnecessary wake-ups of large cores and reducing power consumption during state transitions.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If a core is woken from a low power state to perform simple operations, then the operation can be completed, but the state transition causes latency

Engineering Contradiction:
Improveoperation completionVSAvoidlatency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The processor is divided into multiple cores with different power efficiency characteristics. Small cores are designated for handling simple operations and interrupts, while large cores handle complex tasks. This segmentation allows the system to route wake-up signals appropriately, keeping large cores in low power states longer and reducing overall power consumption during simple operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Small cores are kept in a ready state or lighter sleep state specifically prepared to handle simple operations and interrupts. This preliminary preparation allows them to quickly respond to wake-up signals without requiring full state transitions, thereby reducing latency for simple tasks while maintaining power efficiency.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If frequent periodic wakes are requested by software, then the software requirements are met, but power efficiency is reduced

Engineering Contradiction:
Improvesoftware requirement fulfillmentVSAvoidpower efficiency
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

Small cores autonomously handle simple operations and interrupts without requiring large core intervention. They can independently process wake-up signals and complete simple tasks, serving themselves without needing to wake up larger, more power-consuming cores. This self-service capability maintains software responsiveness while preserving power efficiency.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

A power control mechanism acts as an intermediary between wake-up signals and processor cores. This mechanism intercepts wake-up signals and intelligently routes them to appropriate small cores that can handle simple operations, preventing unnecessary wake-ups of large cores and reducing power consumption during state transitions.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Use of energy by moving object

If current power management strategies are used, then power saving is achieved, but frequent wake-ups of large cores for trivial tasks reduce overall power efficiency

Engineering Contradiction:
Improvepower savingVSAvoidoverall power efficiency
Core Design Contradiction:
Use of energy by moving objectVSProductivity

Solution Approach 1:

The processor is divided into multiple cores with different power efficiency characteristics. Small cores are designated for handling simple operations and interrupts, while large cores handle complex tasks. This segmentation allows the system to route wake-up signals appropriately, keeping large cores in low power states longer and reducing overall power consumption during simple operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different cores are assigned different functional roles based on their power efficiency characteristics. Small cores are optimized for low-power operation and handle simple tasks, while large cores are optimized for performance and handle complex tasks. This local quality differentiation ensures that each core operates in its optimal efficiency zone, improving overall system power efficiency.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10664039B2Power efficient processor architecture
Publication Date: 2020.05.26 INTEL CORP
  • US10664039B2 patent drawing
  • US10664039B2 patent drawing
  • US10664039B2 patent drawing

AI summary

In one embodiment, the present invention includes a method for receiving an interrupt from an accelerator, sending a resume signal directly to a small core responsive to the interrupt and providing a subset of an execution state of the large core to the first small core, and determining whether the small core can handle a request associated with the interrupt, and performing an operation corresponding to the request in the small core if the determination is in the affirmative, and otherwise providing the large core execution state and the resume signal to the large core. Other embodiments are described and claimed.