Workload Scheduling via Coherence-Based Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Parallel workloads, such as those in ray tracing applications, experience divergence in execution and data access, leading to inefficiencies in processing on GPUs due to high levels of divergence, which complicates the execution of workload items across different processing cores and creates memory access inefficiencies.
Innovation Solution
The proposed solution involves dynamically reordering workload items based on coherence information, grouping similar items together, and using a segmented queue system where workload items are sorted and processed in parallel, allowing for improved execution coherence and data coherence without requiring global synchronization, thereby optimizing GPU resource utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If workload items are processed in parallel without reordering, then processing throughput is maintained, but execution coherence and data coherence deteriorate leading to inefficiencies
Solution Approach 1:
The patent segments the queue into multiple segments and divides workload items into different segments based on their coherence characteristics. This allows workload items with similar coherence properties to be grouped together in the same segment, improving execution coherence without reducing overall processing throughput. The segmentation enables independent processing of each segment while maintaining global productivity.
Solution Approach 2:
The patent performs preliminary reordering of workload items before they are processed in parallel. By analyzing coherence information and reordering items in advance, the system ensures that when parallel processing occurs, the workload items are already arranged to maximize execution coherence. This preliminary action resolves the coherence issue before parallel execution begins, maintaining both throughput and coherence.
2Reliability
If workload items are reordered based on coherence information, then execution coherence and data coherence are improved, but system complexity increases due to sorting and queue management
Solution Approach 1:
The patent reduces queue management complexity by dividing the queue into multiple segments, each handling specific types of workload items with similar coherence properties. This segmentation simplifies the sorting requirement within each segment compared to sorting the entire queue, as each segment deals with a subset of workload items with more uniform characteristics.
Solution Approach 2:
The patent implements self-service mechanisms where workload items carry their own coherence information and can be automatically routed to appropriate segments based on this information. The system uses coherence keys and hashing functions that allow workload items to essentially sort themselves into the correct segments without requiring complex external sorting logic, thereby reducing overall system complexity.
3Reliability
If global synchronization is used to ensure coherence, then execution correctness is maintained, but processing speed decreases due to synchronization overhead
Solution Approach 1:
The patent eliminates the need for global synchronization by segmenting the processing system into independent segments that operate autonomously. Each segment maintains its own coherence through local ordering of workload items, removing the requirement for global synchronization barriers. This segmentation allows parallel segments to proceed independently at full speed while maintaining execution correctness through their internal ordering mechanisms.
Solution Approach 2:
The patent introduces coherence keys as an intermediary mechanism that mediates between workload items and the processing system. These keys serve as a sorting criterion that ensures proper ordering without requiring explicit synchronization. The coherence key acts as an intermediary that carries coherence information through the system, enabling correct execution ordering to be maintained through sorting rather than synchronization.
4Measurement precision
If coherence information is computed for all workload items, then sorting accuracy is improved, but computational overhead increases
Solution Approach 1:
The patent applies local quality by computing coherence information selectively based on the specific characteristics and requirements of each workload item. Rather than uniformly computing comprehensive coherence data for all items, the system computes only the necessary coherence keys relevant to each item's processing requirements. This selective computation maintains sufficient accuracy for proper sorting while reducing overall computational overhead.
Solution Approach 2:
The patent transforms complex coherence information into simplified coherence keys through parameter changes. Instead of working with full coherence data structures, the system extracts and uses key parameters that capture the essential coherence characteristics. This parameter transformation reduces the computational burden of coherence calculation while maintaining the precision needed for effective sorting and segmentation.
Data Source
AI summary
Approaches for addressing issues associated with processing workloads that exhibit high divergence in execution and data access are provided. A plurality of workload items to be processed at least partially in parallel may be identified. Coherence information associated with the plurality of workload items may be determined. The plurality of workload items may be enqueued in a segmented queue. The plurality of workload items may be sorted based at least on a similarity of the coherence information. The sorted plurality of workload items may be stored to the queue. Using a set of processing units, the workload items in the queue may be processed at least partially in parallel according to an order of the sorting.


