Techniques for scaling dictionary-based compression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The conventional zero-bandwidth clear (ZBC) mechanism is limited by the capacity of the global uniform table, making it difficult to reclaim or free entries for new values when all entries are used, and it can only be performed using a clear command, which restricts its applicability in dynamically uniform buffers.

Innovation Solution

The introduction of local uniform tables associated with each region allows for scalable dictionary-based compression by storing uniform values locally, enabling dynamic detection and compression of uniform granules, and increasing the number of available indices for ZBC encoding beyond on-chip storage limitations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single global uniform table is used for ZBC compression, then the implementation is simple, but the capacity is limited and entries cannot be easily reclaimed when full

Engineering Contradiction:
Improveuniform table structureVSAvoidnumber of available indices
Core Design Contradiction:
Device complexityVSQuantity of substance

Solution Approach 1:

The patent divides the single global uniform table into multiple region-specific uniform tables, where each region has its own dedicated uniform table and granule set. This segmentation increases the total number of available indices while maintaining manageable table sizes, resolving the contradiction between simplicity and capacity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of organization by associating uniform tables with specific memory regions rather than using a single global table. This regional association allows independent management and reclamation of entries in each region, effectively expanding capacity without proportionally increasing overall complexity.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Speed

If the global uniform table is used to store uniform values, then on-chip access is fast, but the table fills up quickly and reclamation is difficult

Engineering Contradiction:
Improvevalue retrieval speedVSAvoidability to reclaim entries
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

By segmenting the global uniform table into region-specific tables, the patent enables independent reclamation of entries in each region without affecting other regions. When a region's uniform table is full, new entries can be added by reclaiming space from that specific region's table, improving adaptability while maintaining fast on-chip access.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements automatic reclamation of uniform table entries when they are no longer referenced by any granules in the associated region. This allows continuous reuse of table entries, preventing table exhaustion and improving the system's ability to adapt to varying compression needs over time.

Inventive Principle:
Principle #34Discarding and recovering

3Ease of manufacture

If ZBC compression is implemented with a fixed global uniform table, then the implementation is straightforward, but it cannot handle dynamically uniform buffers effectively

Engineering Contradiction:
Improveimplementation simplicityVSAvoidapplicability to dynamic buffers
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The patent introduces dynamic characteristics by allowing uniform tables to be region-specific and independently managed. Each region can dynamically allocate and reclaim uniform table entries based on its specific compression needs, enabling effective handling of dynamically uniform buffers while maintaining relatively simple implementation through standardized region-table associations.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11263051B2Techniques for scaling dictionary-based compression
Publication Date: 2022.03.01 NVIDIA CORP
  • US11263051B2 patent drawing
  • US11263051B2 patent drawing
  • US11263051B2 patent drawing

AI summary

Accesses between a processor and its external memory is reduced when the processor internally maintains a compressed version of values stored in the external memory. The processor can then refer to the compressed version rather than access the external memory. One compression technique involves maintaining a dictionary on the processor mapping portions of a memory to values. When all of the values of a portion of memory are uniform (e.g., the same), the value is stored in the dictionary for that portion of memory. Thereafter, when the processor needs to access that portion of memory, the value is retrieved from the dictionary rather than from external memory. Techniques are disclosed herein to extend, for example, the capabilities of such dictionary-based compression so that the amount of accesses between the processor and its external memory are further reduced.