Flexible Dictionary Sharing in Compressed Caches for Low-Latency Capacity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cache systems face challenges in optimizing cache capacity while minimizing access latency and power consumption, as larger caches increase latency and consume more resources, and traditional compression techniques have limited ability to exploit data value locality.

Innovation Solution

The implementation of a flexible dictionary sharing mechanism in compressed caches, where each cache line is mapped to a set with a dictionary that achieves the best compression ratio, using an array of dictionaries that can be shared among multiple cache lines, and an offset field to modify the mapping for improved compressibility.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If larger caches are used to gain more capacity, then cache capacity is improved, but access latency increases and power consumption increases

Engineering Contradiction:
Improvecache capacityVSAvoidaccess latency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent creates compressed copies of cache data using dictionaries that represent common data patterns. Instead of storing full cache lines, the system stores compressed representations that reference dictionary entries, effectively increasing cache capacity without proportionally increasing physical cache size or access latency.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent changes the representation parameters of cache data by introducing compression ratios and dictionary-based encoding. Data is transformed from full-width storage to compressed formats with variable compression ratios, allowing the same physical cache space to hold more effective cache capacity while maintaining access performance.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If larger caches are used to gain more capacity, then cache capacity is improved, but power consumption increases

Engineering Contradiction:
Improvecache capacityVSAvoidpower consumption
Core Design Contradiction:
Quantity of substanceVSUse of energy by moving object

Solution Approach 1:

The patent uses compressed copies of cache data that require less physical storage space. By storing compressed representations instead of full cache lines, the system achieves higher effective cache capacity with the same physical resources, thereby reducing power consumption compared to implementing a physically larger cache.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent merges the cache storage function with dictionary-based compression structures. The dictionary and compressed cache data work together as an integrated system, allowing the cache to achieve higher effective capacity without the linear power consumption increase that would result from simply adding more cache memory cells.

Inventive Principle:
Principle #5Merging (Combining)

3Quantity of substance

If traditional compression techniques are used, then some space savings are achieved, but the ability to exploit data value locality is limited

Engineering Contradiction:
Improvecache space utilizationVSAvoiddata value locality exploitation
Core Design Contradiction:
Quantity of substanceVSAdaptability or versatility

Solution Approach 1:

The patent creates a universal dictionary structure that can represent multiple types of data patterns and value localities. The dictionary-based compression system can adapt to different data characteristics within the same cache structure, enabling it to exploit various forms of data value locality (temporal, spatial, and value-based) that traditional compression techniques cannot handle effectively.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent implements a dynamic compression system where the dictionary can be updated and adapted based on observed data patterns. The compression approach transitions from static traditional methods to dynamic dictionary-based compression that learns and adapts to data value locality characteristics, improving space utilization while maintaining adaptability to different data types and access patterns.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10983915B2Flexible dictionary sharing for compressed caches
Publication Date: 2021.04.20 ADVANCED MICRO DEVICES INC
  • US10983915B2 patent drawing
  • US10983915B2 patent drawing
  • US10983915B2 patent drawing

AI summary

Systems, apparatuses, and methods for implementing flexible dictionary sharing techniques for caches are disclosed. A set-associative cache includes a dictionary for each data array set. When a cache line is to be allocated in the cache, a cache controller determines to which set a base index of the cache line address maps. Then, a selector unit determines which dictionary of a group of dictionaries stored by those sets neighboring this set would achieve the most compression for the cache line. This dictionary is then selected to compress the cache line. An offset is added to the base index of the cache line to generate a full index in order to map the cache line to the set corresponding to this chosen dictionary. The compressed cache line is stored in this set with the chosen dictionary, and the offset is stored in the corresponding tag array entry.