Persistent Memory Background Eviction for Low-Latency Flush
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing memory systems face high latency and energy consumption during data transfer from volatile to persistent storage, leading to increased system costs and limited storage capacity.
Innovation Solution
Implement a persistent memory controller with metadata management and a weighted round-robin selection process for data eviction, utilizing device idle time to perform background flush, thereby reducing latency and energy consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data is moved from volatile memory to persistent storage immediately, then data persistence is ensured, but system latency increases and energy consumption rises
Solution Approach 1:
The system performs preliminary actions by identifying and prioritizing dirty data in advance using metadata tracking (access patterns, age, hotness), then executes flush operations during idle periods. This preliminary identification allows the system to ensure data persistence without immediate full flush, reducing latency while maintaining reliability.
Solution Approach 2:
The memory controller autonomously manages data eviction by monitoring its own idle time and automatically initiating flush operations without external intervention. The system uses its own idle periods to perform background eviction, eliminating the need for host-initiated flush commands and reducing system latency.
2Quantity of substance
If large amounts of data are moved to persistent storage, then storage capacity is utilized, but energy consumption increases
Solution Approach 1:
Instead of flushing all dirty data immediately, the system performs partial flushes by prioritizing critical data (based on metadata such as access frequency and age) and leaving less critical data for later. This partial action approach reduces energy consumption per operation while ensuring essential data persistence.
Solution Approach 2:
The system uses periodic idle time detection to trigger batched flush operations. By accumulating flush operations during idle periods and executing them periodically rather than continuously, the system reduces peak energy consumption while maintaining data persistence requirements.
3Productivity
If data eviction is performed during active operations, then memory management efficiency improves, but system latency and communication delays increase
Solution Approach 1:
The system extracts the data eviction function from the critical data path by implementing background eviction that operates independently during idle periods. This separation allows memory management to proceed efficiently without blocking host communications, as eviction operations are performed in parallel during non-critical times.
Solution Approach 2:
The metadata controller acts as an intermediary that tracks data characteristics and priorities without directly interfering with host memory operations. This intermediary layer enables efficient memory management decisions to be made based on metadata analysis, while actual data movement occurs during idle periods without impacting communication latency.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Provided are systems (300), methods, and apparatuses for low latency global persistent flush based on background eviction. In one or more examples, the systems (300), devices (325), and methods include generating metadata based on monitoring data in volatile memory (370), generating a request to remove the data in the volatile memory (370) based on the metadata, and processing the request based on the request being allowed to proceed to a data controller (355) in response to a granting of the request based on a request criterion.