Systolic Array Cross-Channel Operations Parallel Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current parallel graphics processing systems face inefficiencies in performing cross-channel operations, particularly in systolic arrays, which hinder optimal performance in graphics data processing and machine-learning operations.

Innovation Solution

The implementation of systolic arrays in parallel computing machines, optimized for efficient cross-channel operations, utilizing dedicated circuitry and instruction formats to accelerate graphics and machine-learning workloads by processing sequences of commands efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional fixed function computational units are used for graphics data processing, then processing reliability is maintained, but processing speed and adaptability to different operations deteriorate

Engineering Contradiction:
Improveadaptability to different operationsVSAvoidcomputational unit architecture
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a unified computational unit architecture that can perform multiple operations including vertex processing, fragment processing, and machine learning operations through a single programmable processor core. This eliminates the need for separate fixed-function units for each operation type, thereby improving adaptability while managing device complexity through consolidation.

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

2Productivity

If SIMD architecture with multiple processing elements is used, then parallel processing capability is improved, but cross-channel operation efficiency deteriorates due to sequential processing requirements

Engineering Contradiction:
Improveparallel processing capabilityVSAvoidcross-channel operation time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent introduces a new dimension of parallelism by implementing multiple independent processing channels (channel 0, channel 1, channel 2, channel 3) within each processing element. These channels can operate simultaneously and independently, allowing cross-channel operations to execute in parallel rather than sequentially, thereby reducing operation time while maintaining high productivity.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Speed

If systolic arrays are implemented for machine learning operations, then processing speed is improved, but cross-channel operation efficiency deteriorates due to sequential channel processing

Engineering Contradiction:
Improveprocessing speedVSAvoidcross-channel operation throughput
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The systolic array is segmented into multiple independent processing channels, each capable of performing machine learning operations independently and simultaneously. This segmentation allows the system to maintain high processing speed within each channel while achieving high overall throughput through parallel channel operation, resolving the contradiction between speed and productivity.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12093213B2Computing efficient cross channel operations in parallel computing machines using systolic arrays
Publication Date: 2024.09.17 INTEL CORP
  • US12093213B2 patent drawing
  • US12093213B2 patent drawing
  • US12093213B2 patent drawing

AI summary

An apparatus to facilitate computing efficient cross channel operations in parallel computing machines using systolic arrays is disclosed. The apparatus includes a plurality of registers and one or more processing elements communicably coupled to the plurality of registers. The one or more processing elements include a systolic array circuit to perform cross-channel operations on source data received from a single source register of the plurality of registers, wherein the systolic array circuit is modified to: receive inputs from the single source register at different stages of the systolic array circuit; perform cross-channel operations at channels of the systolic array circuit; bypass disabled channels of the systolic array circuit, the disabled channels not used to compute the cross-channel operations; and broadcast a final result of a final stage of the systolic array circuit to all channels of a destination register.