Work Item Coordinate Compression Using Swizzle Masks for GPU Scheduling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The rate at which work item information can be sent across the interface between a computation requesting unit and a computation sequencing unit in a computing system is limited, affecting the scheduling and execution of compute tasks, particularly in GPUs, due to the need to transmit large amounts of coordinate data per cycle.
Innovation Solution
A method involving the compression of work item coordinate data using swizzle masks is employed, where a work item valid mask and multiple swizzle masks are computed based on the work group's dimensions and item positions, allowing compressed data to be sent across the interface, which is then decompressed for execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If work item coordinate data is transmitted across the interface between computation requesting unit and computation sequencing unit, then the scheduling and execution of compute tasks can proceed, but the data transmission volume is large which limits the transmission rate
Solution Approach 1:
The patent extracts only the essential coordinate information from complete work item data structures. By identifying and transmitting only the necessary coordinate fields (x, y, z coordinates and work group dimensions) rather than full work item descriptors, the data transmission volume is reduced while maintaining the ability to schedule and execute compute tasks effectively
Solution Approach 2:
Instead of transmitting complete work item data and filtering at the receiving end, the patent inverts the approach by pre-processing and compressing the data at the source (computation requesting unit) before transmission. The coordinate data is encoded in a compact format that requires minimal bandwidth while preserving all necessary scheduling information
2Speed
If the interface between computation requesting unit and computation sequencing unit is designed to handle high data rates, then faster scheduling is achieved, but the interface size and complexity increases
Solution Approach 1:
The patent changes the parameter representation of coordinate data from full-precision floating-point or integer formats to a compressed encoding scheme. By representing coordinates using fewer bits through intelligent encoding (transmitting only necessary precision and utilizing the structured nature of work group coordinates), the data rate requirement is reduced, allowing smaller, simpler interfaces to achieve the same effective throughput
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method for compressing work item coordinate data for work items in a work group and sending the compressed work item coordinate data, each work item in the work group being identifiable with a swizzle index, the method comprising creating a work item valid mask in dependence on the number of work items in the work group and the positions of work items in the work group, the work item valid mask indicating valid work items in the work group; computing first and second swizzle masks indicating which bits of the swizzle index for each work item in the work group correspond to the value of a first and a second coordinates for that work item; and sending the first and second swizzle masks and the work item valid mask.