Stacked Memory PE Dispatch Queues for Barrier-Aware Command Ordering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face delays and inefficiencies due to unmanaged command dependencies in stacked memory architectures, leading to increased latency and incorrect results in high-performance computing applications.

Innovation Solution

A processing element (PE) architecture with multiple dispatch queues and a dispatcher that manages command execution based on type and completion status, ensuring proper ordering and execution of commands to maintain data dependencies.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If commands are executed in sequential order without managing dependencies, then processing speed increases, but incorrect results occur due to violated data dependencies

Engineering Contradiction:
Improveprocessing speedVSAvoidcorrectness of results
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system dynamically adjusts command execution ordering based on dependency relationships. The reorder buffer monitors completion status of prerequisite commands and dynamically reorders subsequent commands to maintain correct data dependencies while maximizing parallel execution. This resolves the contradiction by making the execution order flexible rather than fixed, allowing both speed and correctness.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The reorder buffer acts as an intermediary between the command submission queue and execution units. It receives commands, holds them temporarily, and releases them in the correct order based on dependency completion. This intermediary structure enables parallel processing while ensuring correctness by mediating the execution sequence.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If multiple commands are held at the submission queue waiting for barrier completion, then data dependency correctness is maintained, but latency increases

Engineering Contradiction:
Improvedata dependency correctnessVSAvoidcommand latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Instead of statically holding all commands after a barrier, the system dynamically determines when each command can be executed based on real-time completion status of prerequisite commands. The reorder buffer continuously monitors and adjusts execution timing, releasing commands as soon as their dependencies are satisfied, thereby minimizing latency while maintaining correctness.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs preliminary tracking of command completion status and dependency relationships before executing subsequent commands. By preparing the execution schedule in advance based on known dependencies and monitoring completions, the system reduces waiting time compared to holding all commands until absolute certainty of barrier completion.

Inventive Principle:
Principle #10Preliminary action

3Device complexity

If a simple single dispatch queue is used, then device complexity is reduced, but resource utilization decreases due to unmanaged command dependencies

Engineering Contradiction:
Improvequeue structure complexityVSAvoidresource utilization
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The system uses a single physical dispatch queue but implements dynamic ordering logic that adapts to dependency requirements. The reorder buffer provides the intelligence to manage complex dependencies while using a simple queue structure, achieving high resource utilization without increasing physical complexity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The single dispatch queue serves multiple functions: it acts as both a submission buffer and an execution schedule, while the reorder buffer provides dependency management for all command types. This multi-functional approach achieves complex dependency management with minimal structural complexity.

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

Data Source

PatentUS20260079773A1Systems and methods of program execution in a processing element of a stacked memory module
Publication Date: 2026.03.19 SAMSUNG ELECTRONICS CO LTD
  • US20260079773A1 patent drawing
  • US20260079773A1 patent drawing
  • US20260079773A1 patent drawing

AI summary

Provided are systems, methods, and apparatuses of program execution in a processing element (PE). In one or more examples, the systems, devices, and methods include executing software code at a processing element (PE) of a stacked memory module; pushing, via a dispatcher of the PE, a first command of the software code from a submission queue to a first dispatch queue, the PE comprising multiple dispatch queues that include the first dispatch queue; pushing, via the dispatcher, a barrier command of the software code from the submission queue to the first dispatch queue; holding a second command of the software code at the submission queue based on the barrier command; and pushing the second command from the submission queue to the first dispatch queue based on the dispatcher determining that the first dispatch queue is empty.