Shared Register for GPU Uniform Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Graphics processing units (GPUs) face inefficiencies in data storage and access due to repeated reading and writing of uniform data across multiple processing elements, leading to increased power consumption and processing overhead.

Innovation Solution

Implementing a shared general-purpose register (SGPR) to store uniform data that is the same across multiple processing elements, allowing data to be read and written once and accessed from the SGPR instead of individual general-purpose registers (GPRs), thereby reducing the number of times the GPR is accessed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If uniform data is stored in individual GPRs for each processing element, then each processing element can access its own data independently, but power consumption increases due to repeated reading and writing of the same data across multiple processing elements

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

Solution Approach 1:

The patent merges identical uniform data from multiple individual GPRs into a single shared SGPR. When multiple processing elements hold the same uniform data in their respective GPRs, the system detects this redundancy and consolidates the data into one SGPR that can be shared by all processing elements needing it, thereby reducing total memory access operations and power consumption while maintaining processing efficiency

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The SGPR serves as a universal storage location that can be accessed by multiple processing elements simultaneously. Instead of each processing element having dedicated storage for uniform data, the SGPR provides a multi-functional shared resource that any processing element can access when it needs uniform data, reducing redundant storage and access operations

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

2Ease of operation

If uniform data is read and written to individual GPRs for each processing element, then data access is straightforward and independent, but the number of memory access operations increases leading to higher processing overhead

Engineering Contradiction:
Improvedata access simplicityVSAvoidprocessing overhead
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The SGPR acts as an intermediary between the memory system and multiple processing elements. Instead of each processing element directly accessing memory or individual GPRs for uniform data, the SGPR mediates by providing a shared buffer that reduces the number of direct access operations needed, thereby simplifying the overall data access pattern while reducing processing overhead

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system performs preliminary detection to identify when multiple processing elements have identical uniform data before execution. By detecting and consolidating uniform data into the SGPR in advance, the system prepares an optimized data access pattern that reduces the number of memory access operations needed during actual processing, thereby reducing processing overhead

Inventive Principle:
Principle #10Preliminary action

3Reliability

If each processing element stores data in its own GPR, then data independence and parallel access are maintained, but redundant data access operations increase power consumption

Engineering Contradiction:
Improvedata independenceVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system dynamically determines whether to store data in individual GPRs or consolidate it in the SGPR based on whether the data is uniform across processing elements. This dynamic approach maintains data independence when needed (each element has its own GPR data) while reducing power consumption when data is identical (consolidated in shared SGPR), adapting the storage strategy to the specific data characteristics

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP3161817B1Load scheme for shared register in GPU
Publication Date: 2020.02.19 QUALCOMM INC
  • EP3161817B1 patent drawingFigure 1
  • EP3161817B1 patent drawingFigure 2
  • EP3161817B1 patent drawingFigure 3

AI summary

Techniques are described for determining whether data of a variable for each of a plurality of graphics items is same. If determined that the data is the same, the techniques store the data in a storage location of a specialized shared general purpose register that is associated with the variable.