Credit-Based Processor Energy Rate Limiting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Processor cores in devices can exceed the capacity of the power supply when actively executing energy consumption-intensive workloads, leading to potential erroneous operation and energy wastage due to simultaneous throttling and resumption, which introduces noise into the power supply network.

Innovation Solution

A credit-based processor energy consumption rate limiting system that allocates energy credits to processor cores, allowing them to perform pipeline operations based on available credits, and incorporates a pseudo-random component to stagger execution delays, reducing noise in the power supply network.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If processor cores actively execute energy consumption-intensive workloads at high operating points, then processing speed and productivity are improved, but the aggregate energy consumption rate may exceed the power supply capacity

Engineering Contradiction:
Improveprocessing speedVSAvoidenergy consumption rate
Core Design Contradiction:
ProductivityVSPower

Solution Approach 1:

The system performs preliminary actions by allocating energy credits to processor cores in advance, before the actual execution of energy-intensive workloads. The credit distribution circuit pre-calculates and distributes credits based on predicted energy consumption patterns, allowing processor cores to proactively manage their energy usage and avoid exceeding power supply capacity during high-productivity operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms where processor cores report their energy consumption status and credit usage back to the credit distribution circuit. The credit distribution circuit continuously monitors aggregate energy consumption and adjusts credit allocation dynamically based on real-time feedback, ensuring that productivity goals are maintained while preventing energy consumption rate from exceeding power supply capacity.

Inventive Principle:
Principle #23Feedback

2Power

If traditional throttling protocols are used to limit energy consumption, then power supply capacity is protected, but simultaneous throttling and resumption of multiple processor cores injects noise into the power supply network

Engineering Contradiction:
Improveenergy consumption rateVSAvoidnoise in power supply network
Core Design Contradiction:
PowerVSObject-affected harmful factors

Solution Approach 1:

The system applies preliminary action by allocating energy credits in advance to processor cores, enabling them to make independent throttling decisions based on their individual credit status rather than receiving centralized throttling commands. This preliminary credit allocation allows processor cores to stagger their energy consumption adjustments, reducing simultaneous throttling events and the associated noise injection into the power supply network.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The credit distribution circuit acts as an intermediary between the power supply and processor cores, mediating energy consumption through the credit system. Instead of direct power supply control that causes simultaneous throttling, the credit system provides an intermediate layer that allows processor cores to independently manage their energy usage, thereby reducing noise injection while still protecting power supply capacity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Power

If processor cores are throttled to prevent power supply overload, then energy consumption rate is limited, but execution speed and productivity decrease

Engineering Contradiction:
Improveenergy consumption rateVSAvoidexecution speed
Core Design Contradiction:
PowerVSSpeed

Solution Approach 1:

The system applies dynamics by making the energy credit allocation adjustable and adaptive rather than fixed. The credit distribution circuit dynamically adjusts credit allocation to processor cores based on real-time power supply conditions, workload characteristics, and energy consumption patterns. This dynamic approach allows the system to optimize the balance between energy consumption rate and execution speed, enabling faster execution when power supply capacity permits and implementing throttling only when necessary.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes parameters by adjusting the credit allocation rate and individual core credit limits based on operating conditions. Rather than using fixed throttling thresholds, the system modifies energy consumption parameters dynamically - increasing credits when power supply capacity is available to maintain high execution speed, and reducing credits when overload risk is detected to limit energy consumption rate, thereby optimizing the trade-off between power usage and processing speed.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9798375B1Credit-based processor energy consumption rate limiting system
Publication Date: 2017.10.24 APPLE INC
  • US9798375B1 patent drawing
  • US9798375B1 patent drawing
  • US9798375B1 patent drawing

AI summary

In some embodiments, a system includes a plurality of processor cores and a credit distribution circuit. The credit distribution circuit is configured to provide credits to the processor cores. A quantity of the provided credits is based on a total credit budget and requests for additional credits corresponding to the processor cores. The total credit budget is based on an amount of energy available to the processor cores (e.g., made available by a power supply) during a particular window of time. A particular processor core is configured to determine, based on a remaining number of credits for the particular processor core, whether to perform one or more pipeline operations. The particular processor core is further configured to deduct, based on determining to perform the one or more pipeline operations, one or more credits from a remaining quantity of credits allocated to the particular processor core.