GPU Dynamic Precision Management for Neural Network Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics processing units (GPUs) face limitations in efficiently processing graphics and machine-learning operations due to the need for high parallel processing capabilities and dynamic precision management, particularly in handling large datasets and complex computations.

Innovation Solution

A GPU architecture is developed that incorporates dynamic fixed-point quantization and biased rounding techniques, enabling efficient processing of graphics and machine-learning operations by converting floating-point data to dynamic fixed-point format, allowing for hardware-accelerated arithmetic operations and precision management across layers of neural networks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If floating-point arithmetic is used for neural network computations, then computational precision is maintained, but processing speed and hardware efficiency deteriorate

Engineering Contradiction:
Improvecomputational precisionVSAvoidprocessing speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The system dynamically changes the precision parameter of arithmetic operations by converting between floating-point and fixed-point formats. The precision management unit adjusts the number of significant digits based on operational requirements, enabling high precision when needed and high-speed computation when acceptable precision suffices.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent implements dynamic precision adjustment where the fixed-point format parameters (scaling factors, bit allocations) are adaptively modified during computation. The system transitions from static precision modes to dynamic precision modes, allowing real-time optimization between accuracy and performance based on computational context.

Inventive Principle:
Principle #15Dynamics

2Measurement precision

If high-precision floating-point operations are performed, then computational accuracy is maintained, but power consumption increases

Engineering Contradiction:
Improvecomputational accuracyVSAvoidpower consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The system modifies operational parameters by switching between floating-point and fixed-point arithmetic based on precision requirements. Low-power fixed-point operations are employed when full precision is not critical, while floating-point operations are activated only when high accuracy is mandatory, thereby optimizing energy consumption.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent applies partial precision where sufficient but not maximum precision is used for computations that do not require full floating-point accuracy. This partial action approach reduces computational overhead and power consumption for operations where extreme precision is unnecessary.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If fixed-point quantization is applied to reduce precision, then processing efficiency improves, but data loss increases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoiddata loss
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The precision management unit incorporates feedback mechanisms that monitor computational outputs and adjust quantization parameters accordingly. When data loss is detected or precision requirements are identified, the system automatically refines the fixed-point representation or switches to floating-point operations to minimize information loss.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system applies different precision levels to different parts of the computation graph. Critical operations requiring high accuracy maintain higher precision, while less sensitive operations use reduced precision for efficiency. This localized precision management optimizes the balance between data fidelity and processing performance.

Inventive Principle:
Principle #3Local quality

4Adaptability or versatility

If dynamic precision management is implemented, then adaptability to different computational tasks improves, but device complexity increases

Engineering Contradiction:
Improveadaptability to computational tasksVSAvoidhardware complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a universal precision management unit that handles multiple precision formats (floating-point, fixed-point with varying bit allocations) within a single hardware architecture. This multi-functional approach enables adaptability to diverse computational tasks without requiring separate dedicated hardware for each precision mode.

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

Solution Approach 2:

The precision management unit serves as an intermediary layer between the computational cores and the data representation. It mediates between floating-point and fixed-point formats, handling the complexity of precision conversion and adaptation centrally, thereby shielding the rest of the system from precision management intricacies.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10825127B2Dynamic precision management for integer deep learning primitives
Publication Date: 2020.11.03 INTEL CORP
  • US10825127B2 patent drawing
  • US10825127B2 patent drawing
  • US10825127B2 patent drawing

AI summary

One embodiment provides for a graphics processing unit to perform computations associated with a neural network, the graphics processing unit comprising compute unit including a hardware logic unit having dynamic precision fixed-point logic, the compute unit to receive a set of dynamic fixed-point tensors, compute, via the dynamic precision fixed-point logic, a right-shift value using an absolute maximum value within the set of dynamic fixed-point tensors and a dynamic range of the set of dynamic fixed-point tensors, right-shift data values within the set of dynamic fixed-point tensors based on the right-shift value, increment a shared exponent associated with the set of dynamic fixed-point tensors based on the right-shift value, perform a compute operation on the set of dynamic fixed-point tensors, and generate an output tensor via the compute operation on the set of dynamic fixed-point tensors.