Paletted Data Compression for Four-to-One Ratio

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data compression techniques, such as variable-width differential compression (VDC), struggle to achieve high compression ratios, particularly a four-to-one compression ratio, which is necessary to reduce bandwidth requirements in computer systems like GPUs, where efficient memory access is crucial.

Innovation Solution

A subsystem employing a paletted compression method that processes sequences of four bytes, determines non-zero bytes, generates a five-bit header based on their number and position, and appends data bits to achieve a four-to-one compression ratio by efficiently encoding sequences of zeros and varying data lengths.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If variable-width differential compression (VDC) is used, then data compression is achieved, but the compression ratio is limited and cannot reach four-to-one

Engineering Contradiction:
Improvedata bitsVSAvoidcompression ratio
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent segments the data stream into 4-byte groups and processes each group independently using a 5-bit header encoding scheme. This segmentation allows the encoder to efficiently represent sequences of zeros (common in video data) with minimal bits, achieving the target four-to-one compression ratio that VDC cannot attain with its traditional approach.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the encoding parameters by using a 5-bit header to represent the number and position of non-zero bytes within each 4-byte group, rather than using fixed-width or differential encoding. This parameter change enables more efficient representation of data patterns, particularly sequences of zeros, thereby achieving higher compression ratios.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If higher compression ratios are achieved, then bandwidth to DRAM is reduced, but data transmission and processing efficiency may be compromised

Engineering Contradiction:
ImprovebandwidthVSAvoidprocessing efficiency
Core Design Contradiction:
Quantity of substanceVSEase of operation

Solution Approach 1:

The patent performs preliminary organization of data into 4-byte groups with 5-bit headers that encode the position and count of non-zero bytes. This preliminary structuring facilitates efficient decompression and processing, as the decoder can quickly skip over sequences of zeros indicated by the header, maintaining processing efficiency while achieving high compression ratios and reduced bandwidth usage.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10187663B2Technique for performing variable width data compression using a palette of encodings
Publication Date: 2019.01.22 NVIDIA CORP
  • US10187663B2 patent drawing
  • US10187663B2 patent drawing
  • US10187663B2 patent drawing

AI summary

A subsystem configured to encode an RGBA8 data stream assembles sequences of four-byte groups from the data stream. The subsystem decorrelates the red and blue channels, and computes a difference between each four-byte group and an anchor value. The anchor is encoded at full value. The subsystem then assigns each group a five-bit header based on the number and location of non-zero bytes and on the data content of the non-zero bytes within the group. The subsystem favors zero valued bytes. Thus, when a group includes only zero valued bytes, the header is sufficient to encode the group; no data bits are necessary. Further, two successive groups of zero-valued bytes may be encoded as a single header with no data bits, achieving further data reduction. Finally, the subsystem concatenates all the headers with associated data to yield the source data stream compressed to some ratio, e.g. four-to-one.