Adaptive SSD Garbage Collection Rate Control for High-Performance Volumes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Garbage collection in solid state storage devices (SSDs) leads to increased program/erase cycles, reducing lifespan and impacting performance due to write amplification, and existing methods do not effectively manage garbage collection to balance with host write rates and I/O access patterns.

Innovation Solution

Implement a predictive model to dynamically adjust garbage collection rates based on I/O access patterns, prioritizing garbage collection during low I/O activity to maintain free blocks and minimize latency, and enhance performance by increasing cache thresholds and migrating data in high-performance volumes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If garbage collection is performed frequently to maintain free blocks, then storage performance is improved, but program/erase cycles increase reducing device lifespan

Engineering Contradiction:
Improvestorage performanceVSAvoiddevice lifespan
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The garbage collection rate is dynamically adjusted based on real-time I/O access patterns. During low I/O activity periods, the system performs more aggressive garbage collection to maintain free blocks. During high I/O activity, the system reduces garbage collection intensity to minimize program/erase cycles. This dynamic adaptation resolves the contradiction by making the garbage collection behavior flexible rather than static.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the garbage collection rate parameter based on I/O access pattern conditions. By monitoring I/O metrics and adjusting the garbage collection rate accordingly, the system optimizes the balance between maintaining sufficient free blocks and limiting the number of program/erase cycles. This parameter adjustment allows the system to achieve high storage performance without excessive wear on the device.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If garbage collection rate is increased to maintain free blocks during low I/O activity, then write performance is improved, but I/O latency increases during high activity periods

Engineering Contradiction:
Improvewrite performanceVSAvoidI/O latency
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The garbage collection rate is dynamically adjusted based on real-time I/O access patterns. During low I/O activity periods, the system performs more aggressive garbage collection to maintain free blocks. During high I/O activity, the system reduces garbage collection intensity to minimize program/erase cycles. This dynamic adaptation resolves the contradiction by making the garbage collection behavior flexible rather than static.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs garbage collection in periodic intervals rather than continuously. By monitoring I/O access patterns and scheduling garbage collection operations during appropriate time windows, the system can maintain free blocks without continuously impacting I/O performance. This periodic approach allows the system to balance write performance improvement with I/O latency minimization.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS12373341B1Garbage collection for storage in which high-performance volumes reside
Publication Date: 2025.07.29 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12373341B1 patent drawing
  • US12373341B1 patent drawing
  • US12373341B1 patent drawing

AI summary

Provided are a storage device, system, and method for performance enhancing measures for storage in which high-performance volumes reside. Indication is made of a volume configured in the arrays to have high-performance. An array is determined storing the indicated volume. A determination is made of storage devices in which the determined array resides. The storage devices are enabled to perform garbage collection on blocks of data having valid and invalid pages in the storage devices at a first garbage collection rate and a second garbage collection rate. The second garbage collection rate causes a storage device to perform garbage collection with respect to a greater number of blocks than the first garbage collection rate. A command is sent to the determined storage devices to garbage collect at the second garbage collection rate.