Dynamic Command Scheduling for SSD Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In data storage systems like solid state drives, latency issues arise due to the queuing of commands, where earlier commands in the queue can delay subsequent commands, particularly host read commands, impacting drive performance.

Innovation Solution

Implementing a method to categorize commands into high and low priority queues and dynamically adjust a scheduling ratio based on the number of host read and write commands, as well as the write amplification factor, to optimize processing and reduce latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If commands are processed in the order they are received (FIFO queue), then the system maintains simple command processing logic, but host read commands experience increased latency due to waiting for previous commands

Engineering Contradiction:
Improvecommand processing logicVSAvoidhost read command latency
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent segments the single command queue into multiple priority-based queues (e.g., host read queue, host write queue, internal queue). This segmentation allows host read commands to be separated from other command types, enabling them to be processed with higher priority and reducing their latency without complicating the overall processing logic.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by assigning different service qualities to different command types through priority queues. Host read commands receive preferential treatment (higher priority) compared to host write commands or internal commands, allowing critical read operations to be processed faster while maintaining simple overall system logic.

Inventive Principle:
Principle #3Local quality

2Stability of the object's composition

If the system uses a fixed scheduling ratio for processing different command types, then the system maintains stable and predictable performance, but it cannot adapt to changing workload conditions and write amplification levels

Engineering Contradiction:
Improveperformance stabilityVSAvoidworkload adaptability
Core Design Contradiction:
Stability of the object's compositionVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamics by making the scheduling ratio adjustable and adaptive. The controller dynamically modifies the scheduling ratio based on real-time monitoring of workload characteristics (read/write mix) and write amplification factors. This allows the system to transition from a fixed to a dynamic scheduling approach, maintaining stability through controlled adaptation.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent applies feedback by continuously monitoring system performance metrics (workload type, write amplification) and using this information to adjust the scheduling ratio. The controller receives feedback about the current system state and modifies the command processing schedule accordingly, enabling the system to adapt to changing conditions while maintaining overall stability.

Inventive Principle:
Principle #23Feedback

3Loss of time

If the system prioritizes host read commands over all other commands, then read latency is minimized, but write operations and internal maintenance tasks are delayed, potentially increasing write amplification

Engineering Contradiction:
Improveread latencyVSAvoidwrite operation throughput
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent applies parameter changes by adjusting the scheduling ratio based on write amplification feedback. When write amplification is high, the system dynamically modifies the priority parameters to allow more write operations to be processed, thereby balancing read latency optimization with write throughput maintenance through parameter adjustment.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent implements dynamics by creating a flexible priority system where the relative priorities of different command types can change based on system conditions. The scheduling ratio between host read commands and other commands is dynamically adjusted, allowing the system to optimize read latency when conditions permit while maintaining write productivity when needed.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11645217B2Dynamic command scheduling for storage system
Publication Date: 2023.05.09 SANDISK TECHNOLOGIES LLC
  • US11645217B2 patent drawing
  • US11645217B2 patent drawing
  • US11645217B2 patent drawing

AI summary

The subject technology provides for managing a data storage system. Commands are identified into as a first command type or a second command type. The commands identified as the first command type are assigned to a first queue, and the commands identified as the second command type are assigned to a second queue. After the commands from the first queue and the commands from the second queue are processed based on a scheduling ratio over a predetermined period of time, a write amplification factor, number of host read commands, and number of host write commands during the predetermined period of time are determined. The scheduling ratio is updated based on the write amplification, the number of host read commands, the number of host write commands, and a predetermined scheduling ratio factor. Subsequent commands are processed from the first queue and the second queue based on the updated scheduling ratio.