Inter-device Cache Coherency via Directory Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In inter-device processing systems, maintaining cache coherency across devices is labor-intensive and leads to excessive bus traffic due to the need for programmers to manually track data locations and transfer entire pages of data, even when only a few cache lines need to be updated.

Innovation Solution

The system employs a coherence directory to determine if any device has a valid cache line for requested data, allowing for targeted fetch commands to be sent to the home device for non-cache memory data, reducing bus traffic by transferring only the necessary cache line and automating cache coherency updates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the PCIe protocol is used for inter-device data transfer, then data coherency can be maintained through manual tracking of valid data locations, but programming complexity increases and bus traffic becomes excessive when transferring entire pages of data

Engineering Contradiction:
Improvedata coherencyVSAvoidprogramming complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a coherence directory as an intermediary data structure that automatically tracks the locations of valid cache lines across devices. This mediator eliminates the need for programmers to manually track valid data locations, reducing programming complexity while maintaining data coherency through automated directory management.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The coherence directory enables the system to automatically manage cache coherency without programmer intervention. When a device needs data, the coherence directory automatically determines which device holds the valid copy and facilitates the transfer, making the system self-managing regarding coherence maintenance.

Inventive Principle:
Principle #25Self-service

2Reliability

If entire pages of data (64 cache lines) are transferred between devices, then data coherency is maintained, but bus traffic increases excessively when only a few cache lines need to be transferred

Engineering Contradiction:
Improvedata coherencyVSAvoidbus traffic
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent segments data transfers at the cache line level rather than requiring entire page transfers. The coherence directory enables targeted transfer of only the specific cache lines that need to be moved, reducing bus traffic and energy consumption while maintaining coherency for the accessed data.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of transferring the entire page (64 cache lines) when only a few cache lines are needed, the system performs partial transfers by moving only the necessary cache lines. This partial action approach reduces unnecessary bus traffic and energy consumption while still achieving the required data coherency.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11360906B2Inter-device processing system with cache coherency
Publication Date: 2022.06.14 ALIBABA GROUP HOLDING LTD
  • US11360906B2 patent drawing
  • US11360906B2 patent drawing
  • US11360906B2 patent drawing

AI summary

The devices within an inter-device processing system maintain data coherency in the last level caches of the system as a cache line of data is shared between the devices by utilizing a directory in one of the devices that tracks the coherency protocol states of the memory addresses in the last level caches of the system.