Spatially Decorrelated Entropy Encoding for Fast GPU Data Decoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data compression methods for GPUs and CPUs face challenges in balancing compression speed with memory bandwidth efficiency, particularly in lossless compression processes, and struggle with decoding complexity due to variable length encoding schemes.
Innovation Solution
The method involves performing entropy encoding on 2×2 sets of data values with indications in the header for bit lengths, allowing for simplified decoding by determining bit boundaries quickly, and using spatial decorrelation with a modulo-2n function to process m-bit data as n-bit data, followed by entropy encoding.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If variable length encoding schemes are used to compress data, then compression ratio is improved, but decoding complexity increases
Solution Approach 1:
The patent segments the data processing into distinct stages: spatial decorrelation processing followed by entropy encoding. By dividing the compression process and processing data in organized blocks, the patent enables more efficient decoding despite using variable length encoding schemes.
Solution Approach 2:
The patent performs spatial decorrelation as a preliminary action before entropy encoding. This preprocessing step organizes the data in a way that simplifies subsequent encoding and decoding operations, reducing the overall decoding complexity while maintaining compression effectiveness.
2Productivity
If compression processes are performed at high rates, then productivity is improved, but latency increases
Solution Approach 1:
The patent divides the compression process into parallelizable stages (spatial decorrelation and entropy encoding) that can be processed simultaneously across multiple data blocks. This segmentation enables high throughput while maintaining predictable latency by processing independent blocks in parallel.
Solution Approach 2:
The patent employs dynamic processing where the compression system can adapt its operation mode based on requirements. The spatial decorrelation and entropy encoding stages can be configured to balance between compression speed and latency depending on the specific application needs.
Data Source
AI summary
Data compression (and corresponding decompression) is used to compress blocks of data values involving processes including one or more of colour decorrelation, spatial decorrelation, entropy encoding and packing. The entropy encoding generates encoded data values which have variable sizes (in terms of the number of bits). The entropy encoding uses size indications for respective sets of data values to indicate the number of bits used for the encoded data values of the set. The size indications allow the encoded data values to be parsed quickly (e.g. in parallel).


