Branch Predictor Power Management via Dynamic Global Unit Shutdown

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Computer processors face inefficiencies in power management due to the power consumption associated with branch prediction, which is essential for increasing processing speed but also drains energy.

Innovation Solution

A computer processor is configured with a branch prediction unit that includes a local branch predictor and multiple global predictors, such as a TAGE predictor, where the processor performs local and global branch predictions, increments a counter for local predictions, and powers down global predictors when the counter exceeds a threshold to conserve power.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If global branch predictors are used to improve branch prediction accuracy, then processing speed is improved, but power consumption increases

Engineering Contradiction:
Improveprocessing speedVSAvoidpower consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The patent implements dynamic power management by making the branch prediction unit's operational state changeable. The system transitions between different prediction modes (local-only, hybrid, global-only) based on runtime performance metrics, allowing the architecture to adapt its power consumption characteristics to match actual workload requirements while maintaining processing speed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes operational parameters of the branch prediction unit by adjusting which predictors are active and how they are configured. The system modifies the operational state of global branch predictors based on counter values and thresholds, effectively changing system parameters (power consumption, prediction accuracy) to optimize the trade-off between speed and energy usage.

Inventive Principle:
Principle #35Parameter changes

2Speed

If multiple global branch predictors are used to improve prediction accuracy, then processing speed is improved, but device complexity increases

Engineering Contradiction:
Improveprocessing speedVSAvoidbranch prediction unit complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent reduces effective device complexity by making the branch prediction configuration dynamic. Instead of always activating multiple global predictors, the system adapts the number and type of active predictors based on performance counters, effectively simplifying the operational architecture while maintaining the capability for high-speed processing when needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent segments the branch prediction functionality into distinct local and global predictor components with different power and complexity characteristics. This segmentation allows the system to selectively activate only the necessary components for each workload, reducing overall device complexity while preserving speed capabilities when required.

Inventive Principle:
Principle #1Segmentation

3Use of energy by moving object

If local branch predictor is used exclusively to reduce power consumption, then power consumption is reduced, but branch prediction accuracy may deteriorate

Engineering Contradiction:
Improvepower consumptionVSAvoidbranch prediction accuracy
Core Design Contradiction:
Use of energy by moving objectVSReliability

Solution Approach 1:

The patent implements feedback mechanisms through performance counters that monitor branch prediction accuracy. This feedback drives the dynamic selection of prediction modes, ensuring that the system only relies on low-power local predictors when they demonstrably maintain adequate accuracy, while automatically transitioning to more accurate global predictors when needed, thus balancing power consumption and reliability.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent makes the branch prediction system dynamic by allowing transitions between local-only and hybrid/global modes based on runtime performance. This dynamic adaptation ensures that the system maintains prediction accuracy (reliability) by activating global predictors when local predictors prove insufficient, while minimizing power consumption by using local predictors exclusively when they are adequate.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10037207B2Power management of branch predictors in a computer processor
Publication Date: 2018.07.31 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10037207B2 patent drawing
  • US10037207B2 patent drawing
  • US10037207B2 patent drawing

AI summary

A computer processor includes a branch prediction unit that includes a local branch predictor and a global branch predictor. Managing power consumption in such a computer processor includes, for each of a plurality of branch instructions: performing, by the local branch predictor, a local branch prediction; performing, by each of the global branch predictors, a global branch prediction; determining to utilize the local branch prediction over the global branch predictions as a branch prediction for the branch instruction; incrementing a value of a counter; determining whether the value of the counter exceeds a predetermined threshold; and if the value of the counter exceeds the predetermined threshold, powering down at least one of the global branch predictors and configuring the branch prediction unit to bypass the powered down global branch predictor for branch predictions of subsequent branch instructions.