Demand-Based Volatile Memory Provisioning for Non-Volatile Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional computing devices rely on volatile DRAM memory, which loses data upon power interruption, while non-volatile NAND memory is costly and less efficient for main storage due to higher access times and lower density.
Innovation Solution
A computing device dynamically identifies and manages volatile memory pages as non-volatile by assessing energy availability from both utility and battery power, allowing for demand-based provisioning and memory preservation during power outages, using operating system and firmware to simulate non-volatile storage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If volatile DRAM memory is used for main memory, then cost and storage density are improved, but data loss occurs upon power interruption
Solution Approach 1:
The system performs preliminary actions by identifying and designating specific memory pages as non-volatile before power interruption occurs. The firmware maintains a data structure tracking which pages have been written to and should be preserved, enabling rapid preservation of critical data when power is lost without requiring continuous backup operations.
Solution Approach 2:
The patent extracts the non-volatile property from the traditional NAND memory context and applies it selectively to specific pages within the DRAM array. By treating individual pages as non-volatile rather than requiring entire memory modules to be non-volatile, the system achieves data preservation for critical pages while maintaining the cost and density benefits of DRAM for the remainder of the memory space.
2Reliability
If non-volatile NAND memory is used for main memory, then data preservation is improved, but cost increases and storage density decreases
Solution Approach 1:
The system applies local quality by granting non-volatile properties to only those specific memory pages that require data preservation, rather than making the entire memory system non-volatile. This selective approach allows critical pages to have enhanced reliability while the majority of DRAM capacity maintains its high density and low cost characteristics.
Solution Approach 2:
The patent segments the DRAM memory space into volatile and non-volatile pages, allowing different reliability characteristics to coexist within the same physical memory array. This segmentation enables the system to achieve data preservation for essential pages without incurring the full cost and density penalties of using NAND memory for the entire memory subsystem.
3Productivity
If non-volatile memory pages are dynamically added based on demand, then application performance is improved, but energy consumption increases
Solution Approach 1:
The system implements dynamics by allowing the set of non-volatile memory pages to change over time based on application demand. The firmware can dynamically add pages to the non-volatile set when applications require additional persistent storage and remove pages when demand decreases, optimizing the balance between performance and energy consumption adaptively rather than using a static configuration.
Solution Approach 2:
The patent employs feedback mechanisms where the operating system monitors application usage patterns and communicates demand for non-volatile storage back to the firmware. This feedback loop enables the system to adjust the number of non-volatile pages in response to actual usage conditions, increasing non-volatile capacity when performance is bottlenecked and reducing it when energy conservation is prioritized.
Data Source
AI summary
A computing device may comprise a processor, a volatile memory and a non-volatile storage device. An operating system or firmware of the device may cause one or more pages of the volatile memory to be treated, by applications executing on the computing device, as non-volatile memory pages. A number of pages that may be treated as non-volatile may be determined based on demand for non-volatile storage by at least one application executing on the computing device.


