Inter-subgroup Data Transfer via Barrier Synchronization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current processing units lack efficient mechanisms for inter-subgroup data transfer between work-items belonging to different subgroups, limiting the reuse of memory resources and hindering parallel processing efficiency.

Innovation Solution

The implementation of inter-subgroup data transfer techniques using barriers and specialized API functions, such as gentype copy, gentype shuffle, and subgroup_exchange, allows for data sharing between subgroups without relying on local memory, enabling simultaneous data transfer between multiple subgroups.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data transfer between subgroups is enabled using traditional methods, then data sharing between work-items is possible, but memory resource reuse is limited and processing efficiency is hindered

Engineering Contradiction:
Improveparallel processing efficiencyVSAvoidmemory resource management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges data transfer operations between subgroups into a unified mechanism that operates at the subgroup level. By combining multiple data transfer operations into single collective operations (such as all-to-all, broadcast, or gather operations), the system enables efficient inter-subgroup communication while reducing the complexity of individual memory management operations. This allows work-items across different subgroups to share data directly through the unified transfer mechanism rather than requiring separate memory management for each transfer.

Inventive Principle:
Principle #5Merging (Combining)

2Productivity

If local memory is used for data sharing between subgroups, then data transfer is possible, but memory resource reuse is reduced

Engineering Contradiction:
Improvememory resource reuseVSAvoidlocal memory usage
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent extracts the data transfer functionality from local memory operations and creates a separate inter-subgroup data transfer mechanism. Instead of relying on local memory as the intermediary for data sharing, the system implements dedicated transfer operations that move data directly between subgroups. This extraction allows local memory to be used more efficiently for its primary purposes while enabling data sharing between subgroups through the specialized transfer mechanism, thereby increasing overall memory resource reuse.

Inventive Principle:
Principle #2Taking out (Extraction)

3Adaptability or versatility

If inter-subgroup data transfer is implemented, then data sharing between work-items of different subgroups is enabled, but the mechanism complexity increases

Engineering Contradiction:
Improvedata sharing capabilityVSAvoiddata transfer mechanism complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a universal data transfer mechanism that handles multiple data sharing scenarios through a single set of operations. The inter-subgroup transfer mechanism supports various communication patterns (one-to-one, one-to-many, many-to-one, many-to-many) using unified collective operations. This multi-functional approach enables diverse data sharing capabilities between work-items of different subgroups while maintaining a consistent and manageable operational interface, reducing the apparent complexity despite the versatility provided.

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

Data Source

PatentEP3449368B1Inter-subgroup data sharing
Publication Date: 2021.09.22 QUALCOMM INC
  • EP3449368B1 patent drawingFigure 1
  • EP3449368B1 patent drawingFigure 2
  • EP3449368B1 patent drawingFigure 3

AI summary

In an example, a method of transferring data may include synchronizing work-items corresponding to a first subgroup and work-items corresponding to a second subgroup with a barrier. The method may include performing an inter-subgroup data transfer between the first subgroup and the second subgroup.