Spatial Decorrelation Module for GPU Data Compression
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data compression methods for GPUs and CPUs face challenges in reducing memory bandwidth requirements while maintaining high rendering quality, as compression and decompression processes add latency and require significant power consumption, especially in mobile devices.
Innovation Solution
A spatial decorrelation module with parallel processing pipelines performs first and second spatial decorrelation in different dimensions, optimizing data compression and decompression by storing coefficients efficiently and processing data in a specific order to minimize latency and power usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Use of energy by moving object
If data compression is applied to reduce memory bandwidth requirements, then power consumption is reduced, but compression and decompression latency increases
Solution Approach 1:
The patent divides the data block into multiple scanlines and processes them through multiple parallel pipelines simultaneously. Each pipeline handles a portion of the data, performing spatial decorrelation operations in parallel. This segmentation allows the system to achieve high compression throughput by distributing the computational load across multiple independent processing units, thereby reducing overall latency while maintaining compression functionality.
Solution Approach 2:
The patent performs spatial decorrelation operations on scanlines before they are fully processed and stored. By pre-computing the decorrelation coefficients and storing them in intermediate buffers, the system prepares data in advance for subsequent compression steps. This preliminary action reduces the critical path latency during the actual compression process, as the decorrelation work is already completed when data needs to be compressed.
2Loss of information
If compression rate is made slower to achieve better compression, then compression ratio improves, but decompression rate must match compression rate
Solution Approach 1:
The patent segments the decompression process into multiple parallel pipelines that can simultaneously process different portions of the compressed data. Each pipeline performs inverse spatial decorrelation operations independently. This parallel segmentation allows the decompression rate to exceed the compression rate, as multiple decompression operations can proceed concurrently without being bottlenecked by a single sequential process.
Solution Approach 2:
The patent implements dynamic rate control where the compression and decompression rates can be independently adjusted. The system allows compression to occur at a slower rate when needed for quality, while decompression can operate at higher rates by utilizing parallel processing resources. This dynamic flexibility decouples the rate constraints between compression and decompression operations.
3Productivity
If parallel processing pipelines are used to increase processing speed, then compression and decompression rates improve, but device complexity increases
Solution Approach 1:
The patent divides the processing system into multiple identical, modular pipeline units. Each pipeline is a self-contained module with standardized interfaces and functions. This modular segmentation allows the system to scale processing capacity by simply replicating the same basic unit rather than designing increasingly complex monolithic processors. The regularity of the modular units simplifies design, verification, and manufacturing.
Solution Approach 2:
The patent transitions from sequential single-pipeline processing to parallel multi-pipeline processing, effectively adding a temporal parallelism dimension to the system. By organizing processing units in parallel rather than sequentially, the system achieves higher throughput without requiring each individual unit to be more complex. The parallel architecture distributes the computational burden across multiple simpler units operating simultaneously.
Data Source
AI summary
Methods and modules for spatial decorrelation and recorrelation are described. A block of data values can be spatially decorrelated in two dimensions efficiently by processing rows of the data values in a particular order such that if the results of spatially decorrelating a first row will be used for column-wise spatial decorrelation of a second row then the data values of the first row are processed in an earlier iteration to that in which the data values of the second row are processed. This allows for highly parallelised processing of the block of data values. Spatial recorrelation can be performed as an inverse process to the spatial decorrelation.


