SSD Controller Prioritizing Host Reads Over Garbage Collection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Solid state drives face challenges in maintaining high read quality of service (QoS) due to intermingled read and program operations, which increase latency and write amplification, especially during garbage collection processes, impacting performance in read-intensive applications.

Innovation Solution

Prioritizing host read operations over program operations for garbage collection during random read workloads by minimizing program commands and using metadata counters and flags to manage available unwritten blocks, thereby reducing latency and write amplification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If garbage collection operations are performed to erase blocks in NAND Flash, then storage space is reclaimed for future writes, but read latency increases due to intermingled program and read operations

Engineering Contradiction:
Improveavailable storage spaceVSAvoidread latency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The system dynamically adjusts the priority of garbage collection operations based on the current workload type. When random read workloads are detected, the controller lowers the priority of garbage collection to prevent read latency degradation. When sequential writes are dominant, garbage collection priority is increased to maintain storage health. This dynamic prioritization resolves the contradiction by adapting GC intensity to current performance requirements.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The controller segments the storage management operations into different priority queues: high-priority random read operations and lower-priority garbage collection operations. By separating these operations into distinct processing streams with different priorities, the system can execute reads without being blocked by GC activities, thus maintaining low read latency while still performing necessary garbage collection in the background.

Inventive Principle:
Principle #1Segmentation

2Loss of time

If program operations are minimized during random read workloads, then read latency is reduced, but write amplification increases due to fewer blocks available for writing

Engineering Contradiction:
Improveread latencyVSAvoidwrite amplification
Core Design Contradiction:
Loss of timeVSLoss of energy

Solution Approach 1:

The system changes operational parameters based on workload detection. When random read workload is detected, the controller adjusts the parameter of program operation frequency to be minimized, allowing reads to complete quickly. When sequential write workload is detected, the parameter is adjusted to allow normal program operations. This parameter adjustment resolves the contradiction by optimizing program frequency according to the dominant workload type.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The controller dynamically monitors the type of workload being performed and adjusts garbage collection aggressiveness in real-time. During random read workloads, GC is throttled to minimize read latency impact. During sequential write workloads, GC is allowed to proceed at normal rates. This dynamic adaptation prevents write amplification during writes while protecting read performance during reads.

Inventive Principle:
Principle #15Dynamics

3Productivity

If garbage collection is performed aggressively to maintain free blocks, then write performance is maintained, but read quality of service degrades due to intermingled operations

Engineering Contradiction:
Improvewrite throughputVSAvoidread quality of service
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The controller implements dynamic priority adjustment based on workload detection. When random read operations are detected, the system dynamically lowers GC priority to protect read QoS, even if this temporarily reduces write throughput. When sequential writes dominate, GC priority is increased to maintain write performance. This dynamic prioritization resolves the contradiction by adapting to current performance requirements.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system segments storage operations into priority-based queues, separating time-critical random reads from background garbage collection operations. This segmentation allows the controller to guarantee QoS for random reads by processing them in a high-priority queue, while garbage collection operates in a lower-priority queue that does not interfere with read performance.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20220083280A1Method and apparatus to reduce latency for random read workloads in a solid state drive
Publication Date: 2022.03.17 SK HYNIX NAND PRODUCT SOLUTIONS CORP
  • US20220083280A1 patent drawing
  • US20220083280A1 patent drawing
  • US20220083280A1 patent drawing

AI summary

Read Quality of Service (rQoS) in the solid state drive is improved by reducing latency for host random read workloads. Host read operations for random read workloads are prioritized in the solid state drive over program operations for garbage collection to reduce latency for random read workloads. The program time (tProg) and other associated latencies such as program-suspend-resume overhead, and firmware process overhead to dispatch the program are minimized by minimizing the number of program commands used for garbage collection while the solid state drive is performing read operations for a random read workload for a host read operation, allowing the solid state drive to prioritize host read operations for random read workloads while ensuring that there is no impact to the amount of written data that is on the solid state drive.