CXL Memory Recovery Engine for Seamless Subsystem Failover
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Information handling systems using CXL memory subsystems face downtime and system crashes when a CXL memory subsystem becomes unavailable during runtime, requiring system reset and reboot.
Innovation Solution
An Information Handling System (IHS) with a CXL memory subsystem unavailability recovery engine that configures a CXL device to use a backup CXL memory subsystem by copying data from an unavailable CXL memory subsystem to a non-volatile memory system and then to an available CXL memory subsystem, allowing seamless transition without system initialization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If the system uses a CXL memory subsystem to expand memory availability, then memory capacity and flexibility are improved, but system reliability deteriorates because the system crashes when a CXL memory subsystem becomes unavailable
Solution Approach 1:
The system performs preliminary actions by maintaining backup copies of data in non-volatile memory before the CXL memory subsystem fails. When unavailability is detected, the system can quickly restore data from these pre-prepared backups without requiring full system initialization, thus resolving the contradiction between using volatile CXL memory for capacity and maintaining system reliability.
Solution Approach 2:
The system changes the state of memory availability by transitioning from relying solely on volatile CXL memory to having persistent backup copies in non-volatile memory. This parameter change in data persistence enables the system to recover from CXL memory failures without crashing, maintaining reliability while preserving the benefits of CXL memory expansion.
2Reliability
If the system resets and reboots when CXL memory subsystem becomes unavailable, then system stability is improved, but downtime increases
Solution Approach 1:
The system prepares backup data in non-volatile memory in advance, so when CXL memory failure occurs, recovery can proceed immediately from these pre-positioned backups rather than requiring system shutdown and reboot. This preliminary preparation eliminates downtime while maintaining system stability.
Solution Approach 2:
The system skips the traditional reboot and reinitialization process by implementing a direct recovery path that restores data from non-volatile backups and remaps CXL memory devices. This bypasses the time-consuming initialization sequence while ensuring system stability through proper recovery procedures.
3Adaptability or versatility
If the system configures CXL devices to use distributed CXL memory subsystems, then memory flexibility and addressability are improved, but system complexity increases
Solution Approach 1:
The system introduces a memory management intermediary that handles the complexity of configuring and managing multiple distributed CXL memory subsystems. This intermediary layer provides abstraction for data replication, backup management, and failure recovery, maintaining memory flexibility while reducing the operational complexity for users.
Solution Approach 2:
The system segments memory management functions by separating volatile CXL memory operations from persistent backup operations in non-volatile memory. This segmentation allows independent management of each memory type, simplifying the overall system configuration while preserving the flexibility benefits of distributed CXL memory architecture.
Data Source
AI summary
A CXL memory subsystem unavailability recovery system includes a computing device having a CXL device, CXL memory subsystems, a non-volatile memory system, and a CXL memory subsystem unavailability recovery subsystem. The CXL memory subsystem unavailability recovery subsystem configures the first CXL device to use a first CXL memory subsystem, and copies data stored in the first CXL memory subsystem by the first CXL device to the non-volatile memory system to generate back-up data. During runtime operations for the computing device, the CXL memory subsystem unavailability recovery system determines the first CXL memory subsystem is unavailable, copies the back-up data from the non-volatile memory system to a second CXL memory subsystem, and configures the first CXL device to use the second CXL memory subsystem and stop using the first CXL memory subsystem without requiring initialization of the computing device subsequent to the determination that the first CXL memory subsystem was unavailable.


