Spatially Decorrelated Entropy Encoding for Fast GPU Data Decoding

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering Contradiction Analysis

1Quantity of substance

If variable length encoding schemes are used to compress data, then compression ratio is improved, but decoding complexity increases

Engineering Contradiction:
Improvedata sizeVSAvoiddecoding complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If compression processes are performed at high rates, then productivity is improved, but latency increases

Engineering Contradiction:
Improvecompression rateVSAvoidlatency
Core Design Contradiction:
ProductivityVSLoss of time

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10977833B2Compressing m-bit data using spatial decorrelation and entropy encoding on n-bit data
Publication Date: 2021.04.13 IMAGINATION TECH LTD
  • US10977833B2 patent drawing
  • US10977833B2 patent drawing
  • US10977833B2 patent drawing

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).