Emulated Persistent Memory Across Power Domains for Server Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
NVDIMM devices are not commonly provided in server devices, limiting their storage service functionality, which is less efficient than SSDs due to block-level addressing, and thus there is a need for a persistent memory resource provisioning system that enhances storage performance.
Innovation Solution
An Information Handling System (IHS) with a System Control Processor (SCP) that emulates a persistent memory resource using memory subsystems in multiple power domains, enabling efficient data handling through a first and second memory subsystem powered by different domains, and a memory interface/data mover engine to write data across these subsystems.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If NVDIMM devices are used to provide persistent memory functionality, then storage service performance is improved, but device availability and compatibility are reduced since NVDIMM devices are not commonly provided in server devices
Solution Approach 1:
The patent creates a virtual copy of the NVDIMM device functionality through a virtual NVDIMM device that emulates persistent memory operations. This virtual device is presented to the storage subsystem and can be mapped to various physical memory resources, allowing NVDIMM-dependent storage services to run on standard server devices without physical NVDIMM hardware.
Solution Approach 2:
The patent introduces a virtualization layer (virtual NVDIMM device) that acts as an intermediary between the storage subsystem and physical memory resources. This intermediary emulates NVDIMM behavior and can translate operations to work with standard memory devices, bridging the gap between NVDIMM-dependent applications and non-NVDIMM hardware platforms.
2Adaptability or versatility
If SSD storage devices are used to provide storage service functionality, then device compatibility is improved, but storage performance deteriorates due to block-level addressing functionality being less efficient than byte-level addressing
Solution Approach 1:
The virtual NVDIMM device creates a byte-addressable interface that copies the efficient random access characteristics of NVDIMM devices. This virtual interface layer translates byte-level access patterns to the underlying storage subsystem, maintaining high performance for random write operations while working with standard SSD or HDD hardware.
Solution Approach 2:
The patent changes the addressing parameter from block-level (SSD native) to byte-level (NVDIMM native) by implementing a virtual device that provides byte-addressable access. This parameter transformation allows the storage subsystem to maintain high performance for random operations while using standard hardware platforms.
3Loss of time
If NVDIMM devices are used for caching and journaling operations, then write operation latency is reduced, but device complexity increases due to the need for specialized hardware with backup power sources
Solution Approach 1:
The virtual NVDIMM device copies the caching and journaling functionality of physical NVDIMM devices through software emulation. This virtual implementation provides the same performance benefits for random write operations without requiring specialized hardware with backup power sources, dump circuits, or other complex NVDIMM components.
Solution Approach 2:
The patent replaces the mechanical/hardware-based NVDIMM implementation (with backup power sources, volatile memory chips, and dump circuits) with a software-based virtual device. This substitution eliminates the need for specialized hardware while maintaining the performance characteristics of NVDIMM-dependent storage services.
Data Source
AI summary
A multi-power-domain emulated persistent memory resource system includes a first memory subsystem in a first power domain, a second memory subsystem in a second power domain, a memory interface/data mover subsystem coupled to the first and second memory subsystem, and an SCP subsystem coupled to the memory interface/data mover subsystem. The SCP subsystem presents a storage subsystem with an emulated persistent memory resource that is based on the first and second memory subsystem. When the SCP subsystem receives a write request from the storage subsystem directed to the emulated persistent memory resource, it uses the memory interface/data mover subsystem to write corresponding data to the first and second memory subsystem. Following an unavailability of the first domain power system that results in a loss of the data on the first memory subsystem, the memory interface/data mover subsystem copies the data from the second memory subsystem to the first memory subsystem.


