Multi-Die GPU Barrier Synchronization for Machine Learning Threads

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional barrier and synchronization techniques in machine learning are inefficient due to software dependency, limited access across multiple thread groups, and lack of universal functionalities, leading to suboptimal resource utilization in terms of time, memory, power, and bandwidth.

Innovation Solution

A novel multi-die barrier technique is introduced, enabling per-thread synchronization within thread groups and facilitating synchronization across thread groups without shared local memory, allowing thread scheduling across streaming multiprocessors and graphics processors, and allowing for thread preemption based on barriers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If conventional barrier and synchronization techniques are used, then software implementation is achieved, but resource utilization efficiency deteriorates due to software dependency and lack of hardware support

Engineering Contradiction:
Improvesoftware implementationVSAvoidresource utilization efficiency
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent replaces software-based barrier and synchronization mechanisms with hardware-supported implementations. Specifically, it introduces barrier instructions that are natively supported by the graphics processor hardware, including multi-die barriers that leverage hardware interconnects between GPU dies. This substitution eliminates the overhead of software interpretation and enables direct hardware enforcement of synchronization points, thereby improving resource utilization efficiency while maintaining ease of implementation through standardized instruction sets.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Reliability

If conventional synchronization techniques are used, then thread group synchronization is achieved, but access across multiple thread groups deteriorates due to limited scope

Engineering Contradiction:
Improvethread group synchronizationVSAvoidaccess across multiple thread groups
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces barrier instructions with varying scopes that can synchronize threads within a single thread group or across multiple thread groups and even across different GPU dies. The multi-die barrier instruction, for example, enables synchronization across thread groups on different dies by leveraging hardware interconnects, making the synchronization mechanism universal and adaptable to different granularities of parallel execution without requiring separate mechanisms for each scope.

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

3Reliability

If conventional barrier techniques are used, then basic synchronization is achieved, but universal functionalities deteriorate due to missing features

Engineering Contradiction:
Improvebasic synchronizationVSAvoiduniversal functionalities
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces dynamic barrier mechanisms where barrier instructions can be configured with different parameters such as scope (within-die or across-die), synchronization type (memory barriers, thread barriers), and granularity. This dynamic configurability allows the same barrier instruction framework to adapt to different machine learning workloads and synchronization requirements, providing universal functionality while maintaining reliable basic synchronization. The hardware dynamically adjusts the enforcement of barrier instructions based on the specific execution context.

Inventive Principle:
Principle #15Dynamics

4Productivity

If parallel processing is maximized in SIMT architecture, then processing efficiency is improved, but synchronization overhead deteriorates due to frequent thread group coordination

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidsynchronization overhead
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the synchronization mechanism into hierarchical levels: intra-die barriers for thread groups within the same GPU die and inter-die barriers for coordination across different dies. This segmentation allows parallel processing to proceed efficiently within each die without frequent global synchronization, reducing synchronization overhead. The multi-die barrier only enforces synchronization when threads need to coordinate across die boundaries, allowing independent parallel execution within dies while maintaining overall system coherence.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12001209B2Barriers and synchronization for machine learning at autonomous machines
Publication Date: 2024.06.04 INTEL CORP
  • US12001209B2 patent drawing
  • US12001209B2 patent drawing
  • US12001209B2 patent drawing

AI summary

A method of embodiments, as described herein, includes detecting thread groups relating to machine learning associated with one or more processing devices. The method may further include facilitating barrier synchronization of the thread groups across multiple dies such that each thread in a thread group is scheduled across a set of compute elements associated with the multiple dies, where each die represents a processing device of the one or more processing devices, the processing device including a graphics processor.