Storage Garbage Collection via Multi-Parameter Block Recycling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing garbage collection methods in storage devices are inefficient as they initiate operations only in response to write operations or low free memory blocks, leading to delayed writing, system overload, and unnecessary processor cycles, and fail to effectively recycle memory blocks with free pages.
Innovation Solution
A method and system that optimize garbage collection by determining and recycling memory blocks with the minimum number of free pages, valid pages, and maximum invalid pages, ensuring efficient resource usage and improved memory management.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of energy
If garbage collection is initiated only in response to write operations or low free memory blocks, then the storage device conserves processor cycles, but writing operations get delayed and user experience deteriorates
Solution Approach 1:
The system performs preliminary garbage collection operations proactively before free memory blocks are depleted, rather than waiting for thresholds to be reached. The memory management system continuously monitors and identifies suitable memory blocks for recycling in advance, ensuring that free memory is available when write operations need to occur, thus eliminating writing delays while avoiding excessive processor cycle consumption through intelligent selection criteria
2Quantity of substance
If frequent garbage collection operations are initiated, then free memory blocks are maintained, but the system gets overloaded and consumes excessive processor cycles
Solution Approach 1:
The system changes the selection parameters for garbage collection by considering multiple factors simultaneously: memory block utilization ratio, number of valid pages, number of free pages, and invalid page count. This multi-parameter approach allows the system to identify the most suitable memory blocks for recycling, maintaining adequate free memory blocks while minimizing the frequency and overhead of garbage collection operations, thus preserving system throughput
3Device complexity
If memory blocks with free pages are selected for deletion, then the garbage collection process simplifies, but no actual memory space is freed since pages are already free
Solution Approach 1:
The system applies local quality assessment by examining the specific composition of each memory block (ratio of valid pages to free pages, invalid page count) rather than treating all blocks uniformly. This allows the garbage collection process to selectively target blocks that will actually free memory space when deleted, while still maintaining a relatively simple overall process structure through rule-based selection criteria
4Reliability
If the whole memory block is erased to reclaim a stale page, then the stale page is successfully reclaimed, but the operation becomes inefficient when the block contains many free pages
Solution Approach 1:
Instead of erasing entire memory blocks indiscriminately, the system performs partial action by selecting only those blocks that meet specific criteria (high invalid page count, low valid page count, appropriate free page ratio). This ensures that when a block is erased, it actually contains stale pages that need reclamation, thereby maintaining reliable stale page reclamation while significantly improving reclamation efficiency by avoiding unnecessary erasure of blocks with many free pages
Data Source
AI summary
The present disclosure relates to a method and system for optimizing garbage collection in a storage device. In an embodiment, number of free pages, number of valid pages and number of invalid pages in each of one or more memory blocks in the storage device is determined by a memory management system. Further, at least one target memory block having minimum number of free pages, minimum number of valid pages and maximum number of invalid pages is identified among the one or more memory blocks. The step of determining the number of valid pages is iteratively repeated until the number of valid pages is less than or equal to the number of free pages in at least one of the one or more memory blocks. Finally, the at least one target memory block is recycled by the memory management system, thereby optimizing the garbage collection in the storage device.


