NVM Garbage Collection Using TTL-Based Data Eviction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Non-volatile memory (NVM) devices face challenges in minimizing write amplification, which affects their endurance and performance, especially when handling variable-sized data objects and cached data, leading to increased read and write amplification and reduced system performance.
Innovation Solution
A method and system that manage the garbage collection mechanisms and translation layers of both NVM devices and applications to store variable-sized objects while minimizing write amplification, using a cyclic write pointer and garbage collection pointer to optimize data storage and eviction, and employing a garbage collection process based on Time to Live (TTL) values to automatically purge expired data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If garbage collection mechanisms are used to reclaim invalid pages in NVM devices, then storage space is recovered for future writes, but write amplification increases and device endurance is reduced
Solution Approach 1:
The patent implements preliminary action by pre-allocating over-provisioning space and proactively managing valid page relocation before blocks become full. The system continuously monitors block occupancy and performs garbage collection operations in advance, preventing write amplification from escalating. This proactive approach allows the system to maintain low write amplification by addressing invalid page reclamation before it becomes a critical bottleneck.
Solution Approach 2:
The patent applies parameter changes by dynamically adjusting the threshold for triggering garbage collection based on block occupancy levels. When valid pages occupy less than a predetermined percentage of a block, the system triggers GC operations. This dynamic parameter adjustment optimizes the balance between recovering storage space and minimizing write amplification, adapting to different workload patterns and device states.
2Productivity
If multiple GC mechanisms operate concurrently in NVM devices, then invalid pages are reclaimed more efficiently, but device complexity and coordination overhead increase
Solution Approach 1:
The patent merges the application-level GC mechanism with the device-level GC mechanism into a unified coordination framework. The host processor and NVM device controller work together as a single GC system, sharing information about valid and invalid pages. This consolidation eliminates redundant GC operations and reduces coordination overhead by treating multiple GC mechanisms as one integrated process rather than separate competing systems.
Solution Approach 2:
The patent introduces an intermediary translation layer that mediates between application-level address translations and device-level physical block management. This intermediary component coordinates GC operations by maintaining mapping information and facilitating communication between the host and device GC mechanisms, reducing direct complexity while enabling efficient cooperative garbage collection.
3Adaptability or versatility
If applications implement their own translation layer and GC mechanism for variable-sized data objects, then data management flexibility is improved, but write amplification increases due to non-cooperative duplicated processes
Solution Approach 1:
The patent implements universality by designing a GC coordination framework that handles both fixed-size and variable-sized data objects through a single unified mechanism. The system provides multi-functionality by supporting application-specific data structures and sizing requirements while maintaining device-level optimization. This universal approach eliminates the need for separate GC processes for different data types, reducing write amplification while preserving data management flexibility.
Solution Approach 2:
The patent applies feedback by establishing continuous communication channels between the application-level translation layer and the device-level GC mechanism. The system monitors GC operations and adjusts application-level translation decisions based on device state feedback. This feedback loop ensures that application-specific data management operations cooperate with device GC activities, preventing duplicate writes and reducing overall write amplification.
Data Source
AI summary
A system and a method of managing storage of cached data objects on a non-volatile memory (NVM) computer storage media including at least one NVM storage device, by at least one processor, may include: receiving one or more data objects having respective Time to Live (TTL) values; storing the one or more data objects and respective TTL values at one or more physical block addresses (PBAs) of the storage media; and performing a garbage collection (GC) process on one or more PBAs of the storage media based on at least one TTL value stored at a PBA of the storage media.


