Home Agent Memory Mirroring with Directory-Based Cache Coherence

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current cache coherence protocols in computer systems face inefficiencies in managing home agents, particularly in large configurations, where the need to snoop all caching agents for each request and manage conflicting requests leads to increased bandwidth requirements and hardware utilization, especially when dealing with re-ordering data structures for Out Of Order completions.

Innovation Solution

Implementing a directory-based cache coherence protocol with a home-snoop directory that reduces the need for snooping by maintaining a directory that tracks cache line states and using a single bit to track conflicts, allowing for efficient serialization and fair servicing of requests without re-ordering conflict lists, and enabling seamless memory mirroring and migration over an interconnect network.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a directory-based protocol with home agents is used to manage memory addresses, then cache coherence can be maintained, but bandwidth requirements and hardware utilization increase when dealing with re-ordering data structures for Out Of Order completions

Engineering Contradiction:
Improvecache coherenceVSAvoidhardware utilization
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the conflict tracking function from the full directory structure by using a separate single-bit conflict tracker. This separates the essential coherence tracking from the full address space management, reducing hardware complexity while maintaining cache coherence for the subset of addresses that actually experience conflicts

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of tracking all possible cache lines and addresses in the directory, the system only tracks conflicts for addresses that actually experience conflicts using the single-bit tracker. This partial tracking approach reduces hardware utilization while maintaining sufficient coherence management for the active subset of memory addresses

Inventive Principle:
Principle #16Partial or excessive action

2Reliability

If home agents snoop all caching agents for each request in large configurations, then cache coherence can be ensured, but bandwidth requirements increase

Engineering Contradiction:
Improvecache coherenceVSAvoidbandwidth requirements
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent extracts the coherence verification function from universal snooping by using targeted invalidation only for affected cache lines. Instead of snoop all agents for every request, the system only performs invalidation operations for the specific cache lines that experienced conflicts, significantly reducing bandwidth requirements while maintaining coherence

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system applies local invalidation quality by targeting only the specific cache lines and agents affected by conflicts rather than applying universal snooping to all agents. This localized approach maintains coherence for the affected subset while avoiding unnecessary bandwidth consumption from unrelated cache lines

Inventive Principle:
Principle #3Local quality

3Ease of operation

If a directory is used to track cache line states, then request management can be simplified, but storage needs increase for conflict resolution in large configurations

Engineering Contradiction:
Improverequest managementVSAvoidstorage needs
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The patent extracts the conflict tracking function from the full directory structure by using a separate single-bit conflict tracker. This separates the essential coherence tracking from the full address space management, reducing storage needs while maintaining effective request management for the subset of addresses that actually experience conflicts

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of maintaining full directory entries for all possible addresses including conflict tracking information, the system uses a minimal single-bit tracker only for addresses that experience conflicts. This partial tracking approach significantly reduces storage needs while maintaining sufficient request management capability

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8799586B2Memory mirroring and migration at home agent
Publication Date: 2014.08.05 INTEL CORP
  • US8799586B2 patent drawing
  • US8799586B2 patent drawing
  • US8799586B2 patent drawing

AI summary

Methods and apparatus relating to memory mirroring and migration at a Home Agent (HA) are described. In one embodiment, a home agent may mirror its data at a slave agent. In some embodiments, a bit in a directory may indicate status of cache lines. Other embodiments are also disclosed.