DRAM-Less Garbage Collection Using Split Volatile Memory Buffers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage systems face challenges in efficiently performing garbage collection without Dynamic Random Access Memory (DRAM), which can lead to unexpected data modifications during the process, affecting overall performance.
Innovation Solution
A DRAM-less storage system that partitions source data into multiple portions and temporarily stores them in volatile memory to perform garbage collection, pausing data change operations while allowing passive operations like read and error handling to continue, ensuring efficient bandwidth during the process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If garbage collection is performed without DRAM in storage systems, then cost and device complexity are reduced, but unexpected data modifications occur and performance deteriorates
Solution Approach 1:
The patent segments the garbage collection process into distinct phases: identifying invalid data, pausing data change operations, performing the collection, and resuming operations. This segmentation ensures that data modifications are controlled and predictable, preventing unexpected changes while maintaining system reliability without DRAM
Solution Approach 2:
The patent implements preliminary actions by pausing data change operations before garbage collection begins and resuming them after completion. This preliminary control mechanism ensures data consistency throughout the garbage collection process, preventing unexpected modifications while maintaining reliability in DRAM-less systems
2Reliability
If garbage collection processes all data in system memory, then data consistency is maintained, but processing time and productivity are reduced
Solution Approach 1:
The patent extracts and processes only the specific portions of data that require garbage collection rather than processing all data in system memory. By identifying and targeting only invalid or stale data segments, the system maintains data consistency for relevant data while significantly improving garbage collection throughput and productivity
3Device complexity
If volatile memory size is smaller than memory block size, then device complexity and cost are reduced, but data transfer efficiency worsens
Solution Approach 1:
The patent introduces a temporal dimension to the data transfer process by implementing multi-pass garbage collection. Instead of requiring all volatile memory to be available simultaneously, the system performs multiple sequential passes, loading and processing data portions in different time stages. This approach maintains data transfer efficiency while working within the constraints of smaller volatile memory size
Data Source
AI summary
A system and related method, including system memory with a source memory block and a destination memory block each of a memory block size, a first volatile memory and a second volatile memory, each of a volatile memory size. The system includes processing circuitry to receive a garbage collection request associated with the destination memory block. The processing circuitry then determines whether the memory block size is greater than the volatile memory size and pauses data change operations but allows for passive operations to continue. While data change operations are paused the processing circuitry loads a first portion of data of the source memory block to the first volatile memory and a second portion of the data to the second volatile memory. The processing circuitry writes each portion of data from the volatile memory to the destination memory block to complete garbage collection and unpauses the data change operations.


