Cooperative Warp Scheduling for Register Conflict-Free Vector Computing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Vector computing systems face conflicts when multiple warps access general-purpose registers, leading to inefficient execution and low pipeline utilization due to data dependency and fixed storage partitioning, particularly in big data and artificial intelligence applications.
Innovation Solution
The warp instruction scheduler allows each warp to access a whole or designated portion of general-purpose registers dynamically, enabling independent and parallel execution through software-configured instruction segmentation and resource-per-warp register adjustments.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multiple warps access general-purpose registers simultaneously, then processing speed increases, but register access conflicts occur leading to pipeline stalls
Solution Approach 1:
The patent segments the general-purpose register file into multiple independent banks (e.g., even banks and odd banks). Different warps are directed to access different banks simultaneously, allowing parallel register access without conflicts. This segmentation enables multiple warps to execute instructions in parallel without stalling the pipeline, thus maintaining high processing speed while eliminating access conflicts.
2Device complexity
If fixed storage partitioning is used for warps, then resource management is simplified, but pipeline utilization decreases due to data dependency
Solution Approach 1:
The patent implements dynamic register bank assignment where the scheduler can flexibly assign different register banks to different warps based on their specific data dependency requirements. This dynamic allocation allows the system to adapt to varying computational patterns, maximizing pipeline utilization while maintaining manageable resource complexity through systematic assignment rules.
3Productivity
If warps execute independently in parallel, then processing efficiency improves, but coordination overhead increases
Solution Approach 1:
The patent introduces a warp scheduler as an intermediary component that manages parallel warp execution. The scheduler coordinates register bank assignments and instruction dispatch to multiple warps, enabling efficient parallel processing while centralizing the coordination logic. This mediator approach allows warps to execute independently with high efficiency while the scheduler handles coordination overhead systematically, preventing race conditions and ensuring correct execution order when needed.
Data Source
AI summary
The invention relates to an apparatus for configuring cooperative warps in a vector computing system. The apparatus includes general-purpose registers (GPRs); an arithmetic logical unit (ALU); and a warp instruction scheduler. The warp instruction scheduler is arranged operably to: allow each of a plurality of warps to access to data of a whole or a designated portion of the GPRs through the ALU in accordance with a configuration by a software when being executed; and complete calculations of each warp through the ALU.


