Parallel Entropy Encoding for Low-Latency Image Data Compression
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 of image data, where variable length encoding schemes complicate decoding and increase complexity, and existing solutions do not effectively manage memory power consumption.
Innovation Solution
A method involving four spatial decorrelation modules and four entropy encoding modules processes 8-bit data values by reformatting input channels into 10:10:10 format, applying modulo functions for decorrelation, and using entropy encoding to reduce data size, with corresponding decompression processes to restore original data values efficiently.
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 and decoding speed decreases
Solution Approach 1:
The patent segments the data processing into distinct stages: spatial decorrelation transformation, entropy encoding with variable length codes, and a separate decoding stage with boundary detection. By dividing the encoding process into these segments, the system achieves high compression ratios through variable length encoding while managing decoding complexity through structured boundary detection mechanisms that identify code boundaries without requiring analysis of each encoded value in sequence.
2Productivity
If compression processes are performed at high speed, then productivity is improved, but compression ratio may be reduced
Solution Approach 1:
The patent applies spatial decorrelation transformation as a preliminary action before entropy encoding. This preprocessing step transforms the data into a form that has higher entropy and is more amenable to compression, thereby improving the compression ratio achieved in the subsequent entropy encoding stage without significantly impacting the overall compression speed.
3Reliability
If memory bandwidth is increased to handle higher quality rendering, then rendering quality is improved, but power consumption increases
Solution Approach 1:
The patent extracts and removes redundant information from the data through spatial decorrelation transformation and entropy encoding. By taking out only the essential information needed to represent the data and discarding redundant data, the system reduces the memory bandwidth required to transfer data, thereby reducing power consumption while maintaining rendering quality.
4Quantity of substance
If data is compressed before storage, then memory bandwidth usage is reduced, but latency of read and write operations increases
Solution Approach 1:
The patent employs periodic action through its structured encoding and decoding process. The entropy encoding uses periodic patterns in the data (after spatial decorrelation) to achieve compression, and the decoding process uses periodic boundary detection to efficiently reconstruct the original data. This periodic structure allows for optimized processing that reduces latency while maintaining compression effectiveness.
Data Source
Figure 1
Figure 2
Figure 3
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).