Coherence Directory Way Tracking for Efficient LLC Evictions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As the number of core clusters in a system increases, the effort for tracking duplicate tags for last-level caches (LLCs) becomes significant, leading to inefficient power consumption and time consumption in identifying coherence directory entries during cache block evictions.

Innovation Solution

A directory-based coherence management scheme is employed where each cache block cached in an LLC includes an identifier of a coherence directory way, allowing the directory to read only the indicated way upon eviction, reducing the need to search all directory entries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If duplicate tags are tracked for all LLCs in a system with multiple core clusters, then cache coherency is maintained, but power consumption and time consumption for identifying coherence directory entries increases significantly

Engineering Contradiction:
Improvecache coherencyVSAvoidpower consumption for directory tracking
Core Design Contradiction:
ReliabilityVSUse of energy by stationary object

Solution Approach 1:

The coherence directory is segmented into multiple directory ways (e.g., directory way 0, directory way 1, etc.), where each way stores coherence information for a subset of LLCs. When a cache block is evicted, only the specific directory way containing the relevant coherence entry is accessed, rather than searching the entire directory. This segmentation reduces power consumption by activating only the necessary directory segment.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Coherence directory entries are pre-organized and distributed across multiple directory ways based on LLC identifiers. This preliminary organization allows the system to quickly identify which specific directory way contains the relevant coherence information without performing a full directory search, thereby reducing both power consumption and access time.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If duplicate tags are tracked for all LLCs, then cache coherency is maintained, but time consumption for identifying coherence directory entries increases

Engineering Contradiction:
Improvecache coherencyVSAvoidtime for directory entry identification
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The coherence directory is divided into multiple directory ways, each handling a specific subset of LLCs. This segmentation enables parallel or selective access to only the relevant directory way, significantly reducing the time required to identify coherence entries compared to searching the entire directory.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The directory structure is pre-configured with coherence entries distributed across multiple ways based on LLC identifiers. This preliminary organization allows for direct or indexed access to the specific directory way containing the required coherence information, eliminating the need for exhaustive searches.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If a full directory search is performed upon cache block eviction, then all coherence entries are checked, but power consumption and time consumption increase

Engineering Contradiction:
Improvecoherence entry accuracyVSAvoideviction operation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The directory is segmented into multiple ways, allowing the eviction operation to target and access only the specific way containing the relevant coherence entry. This selective access maintains coherence accuracy while significantly improving eviction operation efficiency by avoiding unnecessary searches of other directory ways.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Coherence entries are pre-distributed across directory ways using a deterministic mapping function (e.g., based on LLC identifier and cache block address). This preliminary distribution enables the system to directly compute and access the correct directory way during eviction, maintaining accuracy while enhancing operational efficiency.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12423235B2Coherence directory way tracking in coherent agents
Publication Date: 2025.09.23 APPLE INC
  • US12423235B2 patent drawing
  • US12423235B2 patent drawing
  • US12423235B2 patent drawing

AI summary

An apparatus includes a plurality of coherent agents, and a coherence directory that includes directory ways for storing coherency information. The coherence directory may be configured to determine that a cache block that is not currently cached among the coherent agents, is stored in a first coherent agent. The coherence directory may be further configured to, in response to this determination, create a particular entry in a selected one of the directory ways. The coherence directory may also be configured to send, to the first coherent agent, an indicator identifying a directory way that includes the entry. In response to a second coherent agent caching the cache block, the coherence directory may update the entry to include the second coherent agent. The first and second coherent agents may be configured to receive copies of the indicator, and to store their copy in locations associated with the cache block.