GPU Register File Segmentation for Parallel Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics processing systems face limitations in efficiently processing graphics data due to reliance on fixed function units and lack of parallel processing capabilities, especially in handling complex graphics operations and machine-learning tasks.

Innovation Solution

A graphics processing unit (GPU) is integrated with host processor cores to accelerate graphics and machine-learning operations, utilizing a parallel processing architecture with SIMT architecture and dedicated circuitry for efficient execution of commands, enabling simultaneous processing of graphics data across multiple clusters.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If fixed function computational units are used to process graphics data, then processing reliability is maintained, but processing versatility and adaptability are limited

Engineering Contradiction:
Improveprocessing versatilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a unified processing core that can execute both traditional graphics operations and machine learning workloads through a single instruction set architecture. The tensor core is designed to perform both GEMM operations for ML and traditional graphics computations, eliminating the need for separate dedicated hardware units for each function type.

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

Solution Approach 2:

The processing architecture employs dynamic configuration where computation units can be reprogrammed at runtime to handle different types of operations. The system switches between graphics processing and machine learning modes through software control, allowing the same physical hardware to adapt its function based on workload requirements.

Inventive Principle:
Principle #15Dynamics

2Productivity

If parallel processing architecture is implemented to increase processing speed, then productivity is improved, but device complexity increases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidarchitecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The processing array is divided into multiple independent computation units that can operate in parallel on different data elements simultaneously. Each computation unit within the array is self-contained and can process one element of the input data, enabling massive parallelism while keeping individual unit complexity low.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent combines multiple processing functions (GEMM, convolution, traditional graphics operations) into a single unified processing array. By merging these functions into one parallel architecture rather than creating separate hardware for each, the system achieves high productivity while controlling overall complexity through shared resources.

Inventive Principle:
Principle #5Merging (Combining)

3Adaptability or versatility

If dedicated circuitry is added to handle multiple operations, then adaptability is improved, but manufacturing complexity increases

Engineering Contradiction:
Improveoperational flexibilityVSAvoidmanufacturing simplicity
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The computation units are designed as universal blocks that can perform multiple operations through configuration rather than having dedicated circuitry for each function. A single computation unit can be programmed to perform matrix multiplication, convolution, or traditional graphics operations, reducing the number of different circuit types needed and simplifying manufacturing.

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

4Productivity

If memory array is segmented into multiple portions, then processing parallelism is improved, but access complexity increases

Engineering Contradiction:
Improveparallel processing capabilityVSAvoidmemory access complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The memory array is divided into multiple independent memory portions that can be accessed in parallel by different computation units. Each memory portion is directly connected to corresponding computation units, enabling simultaneous data retrieval without complex arbitration logic.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The memory architecture provides equal access paths from each computation unit to its corresponding memory portion, creating symmetric access patterns. This equipotential design ensures that no single access path is more complex than others, and all computation units experience similar access latency and control logic complexity.

Inventive Principle:
Principle #12Equipotentiality

Data Source

PatentUS11176990B2System, apparatus and method for segmenting a memory array
Publication Date: 2021.11.16 INTEL CORP
  • US11176990B2 patent drawing
  • US11176990B2 patent drawing
  • US11176990B2 patent drawing

AI summary

In one embodiment, a graphics processor includes a register file having a plurality of storage segments to store information and output a plurality of segment outputs via a plurality of segmented bitlines to a static logic circuit to receive the plurality of segment outputs from the plurality of storage segments and to output read data based on the plurality of segment outputs. The register file may output the read data with a same amount of power without regard to a logic state of the read data. Other embodiments are described and claimed.