Sub-NUMA Memory Mirroring for Fault Resilience
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Sub-NUMA clustering in information handling systems often results in uncorrectable memory errors for operating system kernel data, as existing fault resilient memory systems fail to mirror data across all NUMA nodes, leading to potential system failures when an error occurs.
Innovation Solution
An initialization processing system allocates and configures a mirrored subset of the NUMA memory system for each NUMA node, ensuring that data utilized by each node is mirrored within its respective portion of the memory system, thereby providing fault resilient memory for sub-NUMA clusters.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If Sub-NUMA clustering is enabled to provide multiple NUMA nodes per processor, then processing capability and memory utilization are improved, but fault resilience deteriorates because existing mirroring systems fail to mirror data across all NUMA nodes
Solution Approach 1:
The memory system is segmented into multiple NUMA nodes, with each node receiving dedicated mirrored memory portions. The initialization engine divides the memory system into first and second portions, and further segments each portion into multiple mirrored subsets corresponding to different NUMA nodes, ensuring each node has its own fault-resilient memory space.
Solution Approach 2:
The system performs preliminary configuration during initialization by detecting Sub-NUMA clustering enablement and automatically allocating mirrored memory portions to each NUMA node before operation begins. This preliminary action ensures fault resilience is established in advance, preventing data loss without requiring runtime intervention.
2Reliability
If traditional Address-Range-Based Mirroring is used to protect operating system kernel data, then data protection is improved, but adaptability deteriorates because the system cannot accommodate multiple NUMA nodes with distinct memory requirements
Solution Approach 1:
Each NUMA node is assigned specific mirrored memory portions with tailored characteristics suited to that node's requirements. The system configures first and second mirrored subsets for first NUMA nodes and third and fourth mirrored subsets for second NUMA nodes, allowing each node to have locally optimized memory protection rather than a uniform approach.
Solution Approach 2:
The memory system is designed to serve multiple NUMA nodes simultaneously with a unified mirroring architecture. The initialization engine universally applies the mirroring configuration across all detected NUMA nodes, enabling the same memory system to provide fault-resilient protection for multiple nodes with different memory requirements.
3Productivity
If memory is allocated to multiple NUMA nodes without dedicated mirroring, then memory utilization is improved, but system integrity deteriorates due to uncorrectable memory errors affecting multiple nodes
Solution Approach 1:
The system creates mirror copies of operating system kernel data in dedicated mirrored memory portions for each NUMA node. When data is stored in a primary memory location, a copy is simultaneously maintained in the corresponding mirrored subset, ensuring that if the original is corrupted, an intact copy exists for recovery without affecting other NUMA nodes.
Data Source
AI summary
A sub-Non-Uniform Memory Access (sub-NUMA) clustering fault resilient memory system includes an initialization subsystem that is coupled to a processing system and a memory system. The initialization subsystem determines that the processing system and the memory system are configured to provide a plurality of NUMA nodes, allocates a respective portion of the memory system to each of the plurality of NUMA nodes, and configures each respective portion of the memory system to mirror a mirrored subset of that respective portion of the memory system. Subsequently, respective data that is utilized by each of the plurality of NUMA nodes provided by the processing system and the memory system and that is stored in the mirrored subset of the respective portion of the memory system allocated to that NUMA node is mirrored in that respective portion of the memory system.


