Synchronous Microthreading for Irregular Data-Parallel Workloads

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing parallel processing architectures, such as GPGPU and spatial accelerators, face limitations in handling data-parallel workloads with irregular control and data flow, leading to high overheads and inefficiencies in exploiting hardware parallelism, especially for data-parallel applications.

Innovation Solution

Synchronous Microthreading (SyMT) decouples the machine's vector width from the architecture, allowing multiple vector-width implementations and enabling flexible parallelization of data-parallel applications through scalar execution paths, with microthreads sharing system registers and control status, and supporting dynamic reconvergence for efficient execution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If GPGPU architectures are used for data-parallel workloads, then parallel computation capability is improved, but interaction overhead and software development complexity increase significantly

Engineering Contradiction:
Improveparallel computation capabilityVSAvoidsoftware development flexibility
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a microthreading layer as an intermediary between the host thread and GPGPU architecture. This microthreading layer handles fine-grained parallelism and irregular control flow, allowing the host thread to interact with the GPGPU through a simplified interface while the microthreads manage the complex parallel execution details, thus reducing interaction overhead and software development complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the parallel computation into multiple microthreads that can be managed independently. Each microthread handles specific portions of the data-parallel workload, allowing fine-grained control over execution while maintaining simplicity at the host thread level. This segmentation enables efficient utilization of GPGPU resources without exposing the full complexity to software developers

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If fine-grained parallelism is implemented without exposing vector width, then programming flexibility is improved, but hardware resource utilization becomes more challenging

Engineering Contradiction:
Improveprogramming flexibilityVSAvoidhardware resource utilization
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The microthreading mechanism provides self-service by automatically managing the mapping between microthreads and hardware resources. The system autonomously handles vector width exposure, thread scheduling, and resource allocation without requiring programmer intervention, thus maintaining programming flexibility while efficiently utilizing hardware resources

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent changes the parameter of parallelism granularity from coarse (vector width) to fine (microthread level). By controlling the number and configuration of microthreads, the system can adapt to different hardware resource availabilities while maintaining a consistent programming model that does not expose vector width to developers

Inventive Principle:
Principle #35Parameter changes

3Productivity

If synchronous microthreading is used for data-parallel workloads, then instructions per clock are increased, but energy consumption per operation decreases

Engineering Contradiction:
Improveinstructions per clockVSAvoidenergy consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The synchronous microthreading mechanism ensures continuous utilization of functional units by maintaining multiple active microthreads that can execute instructions in parallel. This continuity reduces idle cycles and maximizes instructions per clock, improving productivity while the efficient resource utilization reduces energy consumption per operation

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS12632259B2Synchronous microthreading
Publication Date: 2026.05.19 INTEL CORP
  • US12632259B2 patent drawing
  • US12632259B2 patent drawing
  • US12632259B2 patent drawing

AI summary

Techniques for using soft-barrier hints are described. An example includes a synchronous microthreading (SyMT) co-processor coupled to a logical processor to execute a plurality of microthreads, with each microthread having an independent register state, upon an execution of an instruction to enter into SyMT mode, wherein the SyMT co-processor is further to support a soft-barrier hint instruction in code which when processed by a microthread is to pause execution of the microthread to be resumed based at least in part on a data structure having at least one entry, the entry to include an instruction pointer of the soft-barrier hint instruction and a count of microthreads that have encountered the soft-barrier hint instruction at the instruction pointer.