Shared Cache Cacheline Transfer Cost Selection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional processing systems do not consider the varying topology when transferring cachelines between private caches, leading to inefficient cacheline transfers due to arbitrary selection of caches, resulting in increased time spent on routing probes and data transfers.

Innovation Solution

The system uses a shared cache with access to shadow tag memory and topology information to determine the transfer cost for each private cache containing a valid cacheline, selecting the cache with the lowest transfer cost to minimize time and optimize cacheline transfers based on interconnect topology.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional systems use arbitrary selection of private caches for cacheline transfers, then the system is simple to implement, but the transfer time increases and efficiency decreases

Engineering Contradiction:
Improvecacheline transfer efficiencyVSAvoidcache selection mechanism complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system pre-computes and stores transfer cost metrics for all private cache pairs before actual cacheline transfers occur. These metrics, which represent the time required to transfer cachelines between caches, are calculated in advance based on interconnect topology and transfer characteristics, allowing the shared cache to quickly identify the optimal source cache without performing complex real-time analysis during transfer operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically selects the source private cache based on transfer cost metrics rather than using a fixed or arbitrary selection method. The shared cache evaluates the pre-computed transfer costs and adaptively chooses the cache that minimizes transfer time, allowing the system to optimize cacheline transfers according to current conditions and topology variations.

Inventive Principle:
Principle #15Dynamics

2Loss of time

If the system considers topology information for cacheline transfers, then transfer time is reduced, but the complexity of the cache management system increases

Engineering Contradiction:
Improvecacheline transfer timeVSAvoidtopology management complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

Transfer cost metrics that incorporate topology information are pre-computed and stored before actual cacheline transfers. The system analyzes the interconnect topology in advance and calculates the transfer time for cachelines between all pairs of private caches, storing these metrics for quick reference during transfer operations, thus avoiding real-time topology analysis complexity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The shared cache acts as an intermediary that uses pre-computed transfer cost metrics to make intelligent routing decisions. Rather than requiring each component to understand or process topology information directly, the shared cache mediates the transfer process by selecting optimal source caches based on pre-analyzed topology data, simplifying the overall system architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of manufacture

If arbitrary cache selection is used, then the system is easier to implement, but system interconnect traffic increases

Engineering Contradiction:
Improvesystem implementation easeVSAvoidsystem interconnect traffic
Core Design Contradiction:
Ease of manufactureVSLoss of energy

Solution Approach 1:

The system pre-calculates transfer cost metrics that reflect the actual interconnect path characteristics and transfer times between private caches. This preliminary analysis identifies the most efficient transfer paths, allowing the shared cache to route cachelines through optimal paths that minimize interconnect traffic and energy consumption.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes the selection criterion from arbitrary cache selection to selection based on transfer cost metrics. By using these metrics as the selection parameter, the system identifies and utilizes the most efficient transfer paths, reducing unnecessary interconnect traffic and energy consumption while maintaining implementation feasibility.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11928060B2Transfer of cachelines in a processing system based on transfer costs
Publication Date: 2024.03.12 ADVANCED MICRO DEVICES INC
  • US11928060B2 patent drawing
  • US11928060B2 patent drawing
  • US11928060B2 patent drawing

AI summary

A processing system includes a plurality of compute units, with each compute unit having an associated first cache of a plurality of first caches, and a second cache shared by the plurality of compute units. The second cache operates to manage transfers of caches between the first caches of the plurality of first caches such that when multiple candidate first caches contain a valid copy of a requested cacheline, the second cache selects the candidate first cache having the shortest total path from the second cache to the candidate first cache and from the candidate first cache to the compute unit issuing a request for the requested cacheline.