Parallel Task Scheduling with Swap Flags to Reduce Pipeline Stalls

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing parallel processing units, such as GPUs, face inefficiencies in task scheduling and synchronization, leading to performance drops due to ALU pipeline stalls and the need for complex software synchronization mechanisms.

Innovation Solution

Implementing a scheduled task scheduler that uses swap flags and hardware logic to dynamically activate and deactivate tasks based on resource availability and synchronization requirements, reducing the need for locks and improving efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If complex software synchronization mechanisms are used to manage task scheduling in parallel processing units, then task coordination and synchronization are achieved, but software overhead increases and performance drops due to pipeline stalls

Engineering Contradiction:
Improvetask synchronizationVSAvoidexecution speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent replaces software-based synchronization mechanisms with hardware-based swap flags and instruction controllers. The swap flag mechanism uses hardware logic to automatically detect and handle task completion and resource availability, eliminating the need for software locks and synchronization primitives that cause pipeline stalls. This substitution of hardware for software directly addresses the contradiction by maintaining reliable task coordination while eliminating the performance penalty of software overhead.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent introduces swap flags as intermediary hardware elements that mediate between tasks and resources. These flags act as intermediaries that automatically signal task completion and resource availability, enabling the instruction controller to make scheduling decisions without software intervention. This intermediary mechanism maintains synchronization reliability while avoiding the performance degradation associated with complex software synchronization.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If software locks and synchronization primitives are used to coordinate tasks, then task coordination is achieved, but pipeline stalls occur and efficiency decreases

Engineering Contradiction:
Improvetask coordinationVSAvoidexecution efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent substitutes hardware swap flags and instruction controllers for software locks and synchronization primitives. The hardware logic continuously monitors swap flags and automatically triggers task activation or deactivation based on resource availability, eliminating pipeline stalls caused by software synchronization. This directly resolves the contradiction by maintaining reliable task coordination through hardware mechanisms that do not cause execution efficiency degradation.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent implements self-service scheduling where the hardware system automatically manages task coordination without software intervention. The instruction controller monitors swap flags and autonomously activates or deactivates tasks based on resource availability, eliminating the need for software locks. This self-service approach maintains reliable task coordination while preventing pipeline stalls, thereby preserving execution efficiency.

Inventive Principle:
Principle #25Self-service

3Manufacturing precision

If the scheduler continuously monitors and manages task states, then task scheduling accuracy is improved, but computational overhead and complexity increase

Engineering Contradiction:
Improvescheduling accuracyVSAvoidscheduler complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent replaces complex software scheduling logic with simple hardware swap flags and an instruction controller. The swap flags automatically track task states and resource availability, eliminating the need for continuous software monitoring and complex scheduling algorithms. This substitution maintains scheduling accuracy through hardware-based state tracking while significantly reducing scheduler complexity and computational overhead.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent extracts the scheduling function from complex software logic and implements it through simple hardware swap flags. The flags capture essential task state information (active/inactive) and resource availability, allowing the instruction controller to make scheduling decisions with minimal complexity. This extraction approach maintains scheduling accuracy by preserving essential state information while eliminating unnecessary computational overhead.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12367046B2Scheduling tasks using swap flags
Publication Date: 2025.07.22 IMAGINATION TECH LTD
  • US12367046B2 patent drawing
  • US12367046B2 patent drawing
  • US12367046B2 patent drawing

AI summary

A method of activating scheduling instructions within a parallel processing unit is described. The method comprises decoding, in an instruction decoder, an instruction in a scheduled task in an active state and checking, by an instruction controller, if a swap flag is set in the decoded instruction. If the swap flag in the decoded instruction is set, a scheduler is triggered to de-activate the scheduled task by changing the scheduled task from the active state to a non-active state.