Asynchronous Compute Scheduling for Dynamic SIMD Resource Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing parallel data processing circuits experience non-optimal utilization of shared resources, leading to reduced efficiency and increased power consumption due to dynamic behavior of contexts, which current manual tuning methods fail to address effectively.

Innovation Solution

A dynamic scheduling mechanism that adjusts resource allocation based on the forward progress of multiple contexts within a processing circuit, dynamically increasing or reducing resource allocation for contexts with varying progress to optimize throughput and efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If manual tuning of resource allocation is performed, then resource utilization may be optimized temporarily, but the dynamic behavior of contexts causes utilization to return to non-optimal levels

Engineering Contradiction:
Improveresource utilizationVSAvoidadaptability to dynamic context behavior
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The system implements dynamic resource allocation where the scheduler continuously monitors context execution progress and adjusts resource distribution in real-time. This allows the system to adapt to changing workload characteristics and maintain optimal resource utilization despite dynamic context behavior, resolving the contradiction between temporary optimization and adaptability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The scheduler incorporates feedback mechanisms by monitoring context execution progress and using this information to dynamically adjust resource allocation. This closed-loop control ensures that resource distribution responds to actual system state, preventing utilization from returning to non-optimal levels and maintaining sustained productivity.

Inventive Principle:
Principle #23Feedback

2Productivity

If multiple jobs are executed concurrently to increase throughput, then hardware resource utilization improves, but shared resource allocation becomes non-optimal leading to increased power consumption

Engineering Contradiction:
ImprovethroughputVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The system dynamically adjusts resource allocation based on real-time context execution progress, allowing multiple jobs to run concurrently when beneficial while reducing allocation to contexts that are not making progress. This dynamic adaptation maintains high throughput while minimizing power consumption by avoiding unnecessary resource allocation to stalled contexts.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The scheduler changes allocation parameters dynamically based on context performance metrics. By adjusting resource distribution parameters in response to execution progress, the system optimizes the balance between throughput and power consumption, ensuring resources are concentrated on productive contexts rather than evenly distributed across all concurrent jobs.

Inventive Principle:
Principle #35Parameter changes

3Device complexity

If static resource allocation is used to simplify scheduling, then device complexity is reduced, but efficiency decreases due to inability to adapt to context performance variations

Engineering Contradiction:
Improvescheduling complexityVSAvoidprocessing efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The system implements self-service scheduling where the scheduler automatically monitors context progress and adjusts resource allocation without external intervention. This self-managing approach maintains relatively simple device architecture while achieving high processing efficiency through automatic adaptation to context performance variations.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS20250390348A1Adaptive asynchronous compute
Publication Date: 2025.12.25 ADVANCED MICRO DEVICES INC
  • US20250390348A1 patent drawing
  • US20250390348A1 patent drawing
  • US20250390348A1 patent drawing

AI summary

An apparatus and method for efficient dynamic scheduling of contexts in a processing circuit. In various implementations, a computing system includes a first processing circuit and a second processing circuit that uses multiple single instruction multiple data (SIMD) circuits, each with multiple parallel lanes of execution. When executing the operating system, the first processing circuit divides a workload into multiple contexts and assigns contexts to the second processing circuit. Rather than evenly allocate shared resources of the second processing circuit, the second processing circuit dynamically updates the allocations of shared resources for the multiple contexts based on 10 the dynamic differences of forward progress of the multiple contexts. By performing dynamic allocation updates, the second processing circuit removes the burden of manually updating the allocation and increases throughput of the workload.