Memory Tile Layout for Compressed Data Without Read-Modify-Write

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing techniques for storing compressed data in memory tiles require read-modify-write operations when writing non-compressed data, which reduces the effective memory bandwidth and performance gains associated with transmitting compressed data.

Innovation Solution

The method involves compressing non-compressed data to generate compressed data and storing it in a memory tile, allowing non-compressed data to be written without overwriting existing compressed data by opportunistically using additional sectors, thereby reducing the need for read-modify-write operations and enhancing memory bandwidth utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If compressed data is stored in a memory tile, then memory bandwidth is improved, but writing non-compressed data requires read-modify-write operations that reduce effective bandwidth

Engineering Contradiction:
Improvememory bandwidthVSAvoidoperation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The memory tile is divided into multiple sectors, allowing the system to store compressed data in some sectors and non-compressed data in other sectors independently. This segmentation enables selective writing to specific sectors without requiring read-modify-write operations on the entire memory tile, thus maintaining high bandwidth while supporting both compressed and non-compressed data formats.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of organization by dividing the memory space into multiple sectors within a tile, adding a spatial dimension to data storage. This allows the system to coexist with both compressed and non-compressed data in the same memory tile without interference, resolving the contradiction between bandwidth improvement and operation complexity.

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

2Productivity

If compressed data is stored in a memory tile, then storage efficiency is improved, but writing non-compressed data overwrites compressed data

Engineering Contradiction:
Improvestorage efficiencyVSAvoiddata loss
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

By dividing the memory tile into multiple sectors, the system can allocate specific sectors for compressed data and other sectors for non-compressed data. This segmentation prevents overwriting of compressed data when writing non-compressed data, as each sector operates independently. The sector division maintains storage efficiency while preventing information loss.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different sectors within the memory tile can have different data formats (compressed or non-compressed) based on local requirements. This local quality approach allows the system to optimize storage efficiency in sectors where compression is beneficial while maintaining data integrity in sectors where non-compressed data is written, preventing overwriting issues.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11061571B1Techniques for efficiently organizing and accessing compressible data
Publication Date: 2021.07.13 NVIDIA CORP
  • US11061571B1 patent drawing
  • US11061571B1 patent drawing
  • US11061571B1 patent drawing

AI summary

In various embodiments, a memory interface unit organizes data within a memory tile to facilitate efficient memory accesses. In an embodiment, a memory tile represents a portion of memory that holds multiple chunks of data, where each chunk is stored either in a non-compressed or in a smaller compressed data format. In an embodiment, the tile is organized to pack multiple compressed chunks together so that multiple compressed chunks can be retrieved from memory with a single read access. In another embodiment, the tile is organized to store redundant copies of compressed chunks so that a compressed chunk can be quickly decompressed within a tile without having to relocate other compressed chunks in the tile. Additional embodiments are further disclosed for allowing efficient accesses to both compressed and non-compressed data.