Barrel Processor Thread Parking for Hazard-Driven Rescheduling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional computing architectures face performance constraints due to significant time and energy consumption in data movement between processors and memory, necessitating more efficient thread rescheduling mechanisms in compute systems.

Innovation Solution

Implementing a compute-near-memory system with on-demand thread rescheduling that parks threads encountering hazards and wakes them when the hazard clears, utilizing a flexible mechanism that reuses existing compute pipeline paths with minimal additional logic.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If threads are stalled in traditional pipeline architecture to clear hazards, then hazard correctness is maintained, but pipeline throughput and compute productivity deteriorate

Engineering Contradiction:
Improvehazard clearing correctnessVSAvoidpipeline throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The pipeline is segmented into multiple independent execution lanes (Lane 0, Lane 1, etc.), each capable of processing threads independently. When a hazard is detected in one lane, only that specific lane stalls while other lanes continue execution, preventing system-wide throughput degradation while maintaining hazard clearing correctness.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically allocates and deallocates execution lanes based on hazard conditions. Execution lanes can be parked (stalled) when hazards are present and reactivated when hazards clear, allowing the pipeline to adapt its structure in real-time to maintain both correctness and throughput.

Inventive Principle:
Principle #15Dynamics

2Reliability

If multiple threads are parked in hazard clearing queues, then hazard management is improved, but thread rescheduling complexity and device complexity increase

Engineering Contradiction:
Improvehazard managementVSAvoidthread rescheduling mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Parked threads automatically wake up and resume execution when their specific hazard conditions clear, without requiring complex external rescheduling mechanisms. Each thread monitors its own hazard status and self-manages its resurrection, simplifying the overall rescheduling complexity while improving hazard management.

Inventive Principle:
Principle #25Self-service

3Loss of time

If compute operations are moved closer to memory, then data access latency is reduced, but device complexity and manufacturing complexity increase

Engineering Contradiction:
Improvedata access latencyVSAvoidcompute-near-memory architecture
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The compute-near-memory architecture is segmented into modular compute blocks that can be independently integrated with memory structures. This modularity allows the system to achieve low-latency data access while managing complexity through standardized, reusable building blocks that simplify manufacturing.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The compute blocks in the CNM architecture are designed with multi-functionality, capable of performing various compute operations and interfacing with different memory types. This universality reduces overall device complexity by using standardized components rather than specialized custom designs for each function.

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

Data Source

PatentUS12613767B2Parking threads in barrel processor for managing hazard clearing
Publication Date: 2026.04.28 MICRON TECHNOLOGY INC
  • US12613767B2 patent drawing
  • US12613767B2 patent drawing
  • US12613767B2 patent drawing

AI summary

Devices and techniques for parking threads in a barrel processor for managing hazard clearing are described herein. A barrel processor includes hazard management circuitry that is used to receive an indication of an instruction executing in a compute pipeline of the barrel processor, the instruction having encountered a hazard and unable to progress through the compute pipeline; store the indication of the instruction in a hazard memory; receive a signal indicating that the hazard has cleared; and cause the instruction to be rescheduled at the beginning of the compute pipeline in response to the signal.