Dynamic Garbage Collection Threshold for Non-Volatile Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing non-volatile storage devices face performance issues due to the static threshold-based initiation of garbage collection operations, which can lead to reduced data storage capacity and resource consumption, negatively impacting device performance.

Innovation Solution

Dynamically determining the initiation of garbage collection based on the write pattern of the host device and the number of free memory blocks using a linear regression model, along with adjusting the amount of data relocation based on the average valid fragment count.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If garbage collection operations are initiated only when free memory blocks reach a static threshold, then the storage device can maintain simple operation logic, but device performance deteriorates due to reduced data storage capacity and increased resource consumption

Engineering Contradiction:
Improveoperation logic simplicityVSAvoiddevice performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent transforms the static threshold-based garbage collection initiation into a dynamic process by using linear regression models to predict future free memory block counts based on historical write patterns. The system continuously updates predictions as new I/O commands are received, allowing garbage collection to be initiated proactively before memory blocks are depleted, thereby maintaining both operational simplicity and high device performance

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs preliminary analysis of write patterns and predicts future memory block availability before garbage collection is needed. By using linear regression to forecast when free memory blocks will fall below thresholds, the system can initiate garbage collection operations in advance, preventing performance degradation before it occurs

Inventive Principle:
Principle #10Preliminary action

2Loss of energy

If garbage collection operations are delayed until the static threshold is reached, then resource consumption is reduced, but data storage capacity is reduced

Engineering Contradiction:
Improveresource consumptionVSAvoiddata storage capacity
Core Design Contradiction:
Loss of energyVSQuantity of substance

Solution Approach 1:

The system implements feedback by continuously monitoring the number of free memory blocks and comparing actual values against predicted values from the linear regression model. This feedback loop allows the system to adjust garbage collection timing dynamically, initiating operations when predictions indicate future capacity constraints, thereby optimizing both resource consumption and data storage capacity

Inventive Principle:
Principle #23Feedback

3Quantity of substance

If garbage collection operations consume most of the allocated time for background operations, then free memory blocks are maintained, but overall device performance is negatively impacted

Engineering Contradiction:
Improvefree memory blocksVSAvoidoverall device performance
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

By predicting future memory block availability using linear regression analysis of write patterns, the system initiates garbage collection operations at optimal times before memory blocks are depleted. This preliminary action prevents the need for urgent, resource-intensive garbage collection operations that would consume excessive time and degrade overall device performance

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12260085B2Dynamically determining a memory block threshold for initiating a garbage collection process
Publication Date: 2025.03.25 SANDISK TECHNOLOGIES LLC
  • US12260085B2 patent drawing
  • US12260085B2 patent drawing
  • US12260085B2 patent drawing

AI summary

A write pattern of a host device is used to dynamically determine when to initiate a garbage collection process on a data storage device. The write pattern of the host device is based on a number of I/O commands received from the host device and on a number of available memory blocks in the data storage device. If the write pattern of the host device indicates that fewer than a threshold number of memory blocks will be available after a predetermined number of additional I/O commands are received, the garbage collection process is initiated. An amount of valid data that is transferred from one memory location to another memory location during the garbage collection process is also dynamically determined. Thus, a garbage collection process may be tailored to a specific host device.