SSD Garbage Collection Control via Load Threshold Monitoring

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In storage devices like SSDs using NAND flash memory, garbage collection processes interrupt data writing/reading operations and can lead to system instability and unnecessary wear, as they are typically executed during idle times without considering the device's workload.

Innovation Solution

The storage device itself determines its idle state based on threshold values related to command queues and data sizes, and stops or resumes garbage collection accordingly to avoid interfering with active operations, ensuring that garbage collection is not executed during peak usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If garbage collection is executed during idle times, then memory areas with unnecessary data are reused, but data writing/reading operations are interrupted and system stability deteriorates

Engineering Contradiction:
Improvesystem stabilityVSAvoiddata writing/reading operation continuity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The garbage collection execution decision is made dynamic by continuously monitoring the loaded state of the storage device. The system adapts garbage collection execution based on real-time workload conditions, switching between executing and suspending garbage collection according to whether the device is in a high or low loaded state, thereby resolving the contradiction between system stability and operation continuity

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system implements a feedback mechanism where the loaded state (command queue depth, data transfer rate) is continuously monitored and used to control garbage collection execution. When the loaded state exceeds a threshold, garbage collection is suspended; when below the threshold, it is executed, creating a closed-loop control system that maintains both stability and productivity

Inventive Principle:
Principle #23Feedback

2Productivity

If garbage collection is executed frequently, then memory reuse efficiency is improved, but device wear increases

Engineering Contradiction:
Improvememory reuse efficiencyVSAvoiddevice lifespan
Core Design Contradiction:
ProductivityVSDuration of action of stationary object

Solution Approach 1:

The system changes the execution parameter of garbage collection from a fixed schedule to a condition-based parameter. By monitoring the loaded state and executing garbage collection only when the loaded state is below a threshold, the system optimizes the balance between memory reuse efficiency and device wear, extending device lifespan while maintaining productivity

Inventive Principle:
Principle #35Parameter changes

3Productivity

If garbage collection is suspended during high workload, then data writing/reading operation continuity is maintained, but memory area reuse is delayed

Engineering Contradiction:
Improvedata writing/reading operation continuityVSAvoidmemory reuse delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system implements periodic monitoring of the loaded state and executes garbage collection in periodic intervals when conditions permit. This periodic action ensures that memory reuse occurs regularly without continuously interrupting data operations, balancing operation continuity with memory reuse timing

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS11397675B2Storage device, computer system, and operation method of storage device configured to arbitrarily stop garbage collection
Publication Date: 2022.07.26 KIOXIA CORP
  • US11397675B2 patent drawing
  • US11397675B2 patent drawing
  • US11397675B2 patent drawing

AI summary

According to one embodiment, a storage device includes a nonvolatile memory and a controller. The nonvolatile memory cannot overwrite data written in a memory area. The controller controls writing/reading of data to/from the nonvolatile memory in response to a request from a host device. The controller includes a garbage collection processor and a garbage collection controller. The garbage collection processor executes garbage collection to reuse a memory area on the nonvolatile memory in which unnecessary data remain. The garbage collection controller stops the garbage collection executed by the garbage collection processor when the storage device is in a loaded state equal to or less than a threshold value.