Dynamic Precision Level Selection for Workload Power Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Integrated circuit chips face challenges in balancing performance and power consumption, particularly in battery-powered devices, as they often operate at high precision levels unnecessarily, leading to excessive power consumption and heat generation.

Innovation Solution

An electronic device with a computational functional block that dynamically configures precision levels for operands and results, enabling the disabling of unused circuit elements and selecting the most power-efficient precision level based on workload behavior, thereby reducing power consumption and heat generation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If higher precision levels are used for computations, then measurement precision is improved, but use of energy increases

Engineering Contradiction:
Improveprecision of operands and resultsVSAvoidpower consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The system dynamically adjusts the precision level of computations based on the actual requirements of the workload being executed. The controller monitors workload characteristics and switches between different precision levels (e.g., 32-bit, 64-bit, 128-bit) as needed, rather than using a fixed high precision level for all operations. This dynamic adaptation allows the system to use higher precision only when necessary for accuracy while consuming less power during operations that can tolerate lower precision.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the precision parameter of computational operations based on workload analysis. By adjusting the precision level (a key parameter) according to the specific requirements of different workloads, the system optimizes the balance between computational accuracy and power consumption. For example, the system may switch from 64-bit precision to 32-bit precision for operations where full precision is not required, thereby reducing power consumption while maintaining sufficient accuracy.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If higher precision levels are used for computations, then measurement precision is improved, but device complexity increases

Engineering Contradiction:
Improveprecision of operands and resultsVSAvoidcircuit element configuration
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system employs dynamic precision adjustment where the controller functional block monitors workload characteristics and switches between different precision levels as needed. This dynamic approach allows the system to maintain support for multiple precision levels without permanently configuring complex circuitry for all levels simultaneously. The circuit elements are configured adaptively based on current workload requirements, reducing overall device complexity while still providing high precision when needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The computational functional block is designed to be universal, capable of operating at multiple precision levels (e.g., 32-bit, 64-bit, 128-bit) using the same physical circuit elements. Rather than having separate dedicated circuits for each precision level, the system uses a single configurable computational unit that can be dynamically adjusted to different precision modes. This multi-functionality reduces device complexity by eliminating redundant circuitry while maintaining the capability to provide high precision when required.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Measurement precision

If full specified precision is used for all operations, then measurement precision is improved, but productivity decreases due to unnecessary power consumption

Engineering Contradiction:
Improveaccuracy of resultsVSAvoidoperational efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The system dynamically selects the appropriate precision level for each workload based on actual computational requirements. The controller analyzes workload characteristics and adjusts the precision level accordingly, using higher precision only when necessary for accuracy-critical operations and lower precision for operations that can tolerate reduced accuracy. This dynamic adaptation improves productivity by reducing the computational overhead and power consumption associated with using full precision for all operations, while still maintaining measurement precision where it is truly needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system applies partial precision rather than full precision for operations where complete accuracy is not required. By using lower precision levels (e.g., 32-bit instead of 64-bit, or 16-bit instead of 32-bit) for workloads that can tolerate some approximation, the system reduces computational complexity and power consumption. This partial action approach maintains sufficient measurement precision for the specific application while improving overall productivity by avoiding unnecessary computational overhead.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11150899B2Selecting a precision level for executing a workload in an electronic device
Publication Date: 2021.10.19 ADVANCED MICRO DEVICES INC
  • US11150899B2 patent drawing
  • US11150899B2 patent drawing
  • US11150899B2 patent drawing

AI summary

An electronic device includes a controller functional block and a computational functional block. During operation, while the computational functional block executes a test portion of a workload at at least one precision level, the controller functional block monitors a behavior of the computational functional block. Based on the behavior of the computational functional block while executing the test portion of the workload at the at least one precision level, the controller functional block selects a given precision level from among a set of two or more precision levels at which the computational functional block is to execute a remaining portion of the workload. The controller functional block then configures the computational block to execute the remaining portion of the workload at the given precision level.