Global Persistent Flush Protocol for Decentralized CXL Cache Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing interconnect architectures in computing systems face challenges in efficiently managing communication and data consistency across multiple devices, particularly in scenarios involving asynchronous events like power failures, where data cached in volatile memory needs to be flushed to persistent memory, especially when caches and persistent memory are decentralized beyond the host processor.

Innovation Solution

Implementing a Global Persistent Flush (GPF) protocol in CXL links to manage cache and buffer flushes to persistent memory through a two-phase process, including cache flush and buffer flush phases, with error detection and reporting, enabling decentralized cache management across a CXL tree.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a traditional multi-drop bus is used for interconnect architecture, then the system is simpler and easier to implement, but communication speed and data consistency management become insufficient for modern multi-core processors

Engineering Contradiction:
Improvecommunication speedVSAvoidinterconnect architecture complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The interconnect architecture is segmented into multiple independent channels instead of a single shared bus. Each channel can operate independently at high speed, enabling parallel communication between multiple cores while maintaining simplicity through modular design. This resolves the contradiction by achieving high communication speed through parallel channels without requiring complex arbitration protocols.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

An intermediary flush management mechanism is introduced to coordinate cache flush operations across decentralized caches. This mediator handles the complexity of ensuring data consistency and proper flushing order, allowing the underlying interconnect to remain simple while achieving reliable data communication.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If cache and persistent memory are decentralized beyond the host processor, then system scalability and adaptability improve, but managing data consistency and ensuring proper flush operations becomes more difficult

Engineering Contradiction:
Improvesystem scalabilityVSAvoiddata consistency
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system performs preliminary flush actions before power loss or system shutdown by detecting asynchronous events and initiating cache flush operations in advance. This ensures that all cached data is written to persistent memory before the critical section, maintaining data consistency reliability while allowing decentralized cache architecture for scalability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A feedback mechanism is implemented to track flush operation status across decentralized caches. The system receives feedback about which caches need flushing and coordinates the flush operations accordingly, ensuring data consistency is maintained throughout the distributed memory hierarchy without requiring centralized control.

Inventive Principle:
Principle #23Feedback

3Speed

If asynchronous events like power failure occur, then system responsiveness is improved, but data loss risk increases if cached data is not flushed to persistent memory

Engineering Contradiction:
Improvesystem responsivenessVSAvoiddata integrity
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system continuously monitors for asynchronous events and performs preliminary flush operations before actual data loss can occur. When a power failure or shutdown is detected, the cache flush mechanism is already in place and can immediately write cached data to persistent memory, ensuring both rapid response and data integrity protection.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system prepares beforehand by maintaining the ability to perform rapid flush operations to persistent memory. This cushioning mechanism ensures that even if asynchronous events interrupt normal operation, data integrity is protected because the flush path is pre-established and can operate at high speed when needed.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

Data Source

PatentUS12393515B2Global persistent flush
Publication Date: 2025.08.19 INTEL CORP
  • US12393515B2 patent drawing
  • US12393515B2 patent drawing
  • US12393515B2 patent drawing

AI summary

A cache flush request is received in a first phase of a persistent memory flush flow, where the first phase is initiated by a host processor, and the cache flush request requests that data in cache memory be flushed to persistent memory within a system. A cache flush response is sent in the first phase responsive to the cache flush request, where the cache flush response identifies whether an error is detected in the first phase. A memory buffer flush request is received in a second phase of the persistent memory flush flow, where the second phase is initiated by the host processor upon completion of the first phase, and the memory buffer flush request requests that data in buffers of persistent memory devices in the system be flushed to persistent memory. A memory buffer flush response is sent in the second phase responsive to the memory buffer flush response.