Repurposing Dead Cache Blocks for Write-Back Hierarchy Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In processing systems with multilevel cache hierarchies employing a write-back policy, dead cache blocks with valid tags lead to inefficient use of cache space, causing unnecessary cache misses, re-fetches, lower performance, and higher power consumption due to the invalidation of cache lines in lower level caches.

Innovation Solution

Repurpose dead cache blocks by replacing invalid data with new valid data and storing the new tags in a dead block tag way or moving valid tags to a separate cache coherence tag way, allowing these blocks to be reused for storing new data, such as prefetch, duplicate, or compressed data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If cache lines are invalidated in lower level caches to maintain coherence with higher level caches, then cache coherence is maintained, but cache space is wasted and performance decreases

Engineering Contradiction:
Improvecache coherenceVSAvoidcache efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the tag storage function from the data storage function by introducing a separate dead block tag way. This allows the data block to be invalidated and reused while the tag is preserved in a dedicated coherence tracking structure, resolving the contradiction between maintaining coherence and utilizing cache space efficiently.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts the coherence-tracking tag from the main cache structure and places it in a separate dead block tag way. This extraction allows the main cache block to be repurposed for new data while the extracted tag continues to serve coherence purposes, eliminating the waste of cache space.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If dead cache blocks are maintained with valid tags for coherence purposes, then cache coherence is ensured, but cache space utilization decreases

Engineering Contradiction:
Improvecache coherenceVSAvoidcache space utilization
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent adds a dimensional separation between tag storage and data storage by introducing a specialized dead block tag way structure. This dimensional change allows tags to persist in one dimension (coherence tracking) while data blocks are freed in another dimension (cache space), resolving the space utilization issue without compromising coherence.

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

Solution Approach 2:

The dead block tag way serves multiple functions: it maintains cache coherence information, enables identification of dead blocks, and allows the corresponding data blocks to be repurposed. This multi-functionality resolves the contradiction by making the tag structure serve both coherence and space management purposes.

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

3Productivity

If cache blocks are reused for new data, then cache efficiency improves, but cache coherence tracking becomes complex

Engineering Contradiction:
Improvecache efficiencyVSAvoidcoherence tracking complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

By segmenting the tag storage into active tags and dead block tags, the patent simplifies coherence tracking. When a block is reused, the system only needs to manage tags in the dead block tag way, which are already identified as such, reducing the complexity of tracking coherence for reused blocks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The dead block tag way acts as an intermediary structure that mediates between coherence requirements and block reuse. It provides a clear indication of which blocks are dead and can be safely reused, simplifying the coherence tracking logic by providing a dedicated intermediary structure for managing this transition.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9990289B2System and method for repurposing dead cache blocks
Publication Date: 2018.06.05 ADVANCED MICRO DEVICES INC
  • US9990289B2 patent drawing
  • US9990289B2 patent drawing
  • US9990289B2 patent drawing

AI summary

A processing system having a multilevel cache hierarchy employs techniques for repurposing dead cache blocks so as to use otherwise wasted space in a cache hierarchy employing a write-back scheme. For a cache line containing invalid data with a valid tag, the valid tag is maintained for cache coherence purposes or otherwise, resulting in a valid tag for a dead cache block. A cache controller repurposes the dead cache block by storing any of a variety of new data at the dead cache block, while storing the new tag in a tag entry of a dead block tag way with an identifier indicating the location of the new data.