Dynamic Command Fetching in NVMe Storage Controllers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current NVMe systems rely on static arbitration logic for selecting commands from submission queues, which may not optimize resource utilization when storage device resources are limited and host demands exceed processing capacity.
Innovation Solution
Implementing a method that collects submission queue command statistics and monitors resource state to dynamically select the next command from submission queues, allowing for intelligent fetching based on historical data and current resource availability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If static arbitration logic (round robin or weighted round robin) is used to select commands from submission queues, then the system maintains simple selection mechanisms, but resource utilization deteriorates when storage device resources are limited and host demands exceed processing capacity
Solution Approach 1:
The patent implements dynamic command selection by transitioning from static round-robin arbitration to a mechanism that adapts selection based on real-time resource state. The device controller monitors resource availability and dynamically adjusts which submission queue to fetch commands from, ensuring optimal resource utilization under varying load conditions while maintaining manageable complexity through structured state monitoring and selection logic.
2Ease of operation
If static arbitration logic is used for command selection, then the system operates with fixed priority rules, but processing efficiency deteriorates when commands cannot be immediately processed
Solution Approach 1:
The patent implements feedback mechanisms where the device controller continuously monitors the state of storage device resources and uses this information to dynamically adjust command selection. When resources are available, commands are fetched according to monitoring results; when resources are unavailable, the system adapts selection to prioritize commands that can be immediately processed, thereby improving processing efficiency while maintaining operational simplicity through structured feedback loops.
3Device complexity
If the device fetches commands from submission queues without intelligent selection, then the system maintains simple fetching logic, but wait times increase when resources are unavailable
Solution Approach 1:
The patent applies preliminary action by having the device controller monitor resource state in advance before fetching commands. By proactively assessing resource availability and predicting which commands can be immediately processed, the system reduces wait times without significantly increasing fetching logic complexity. The monitoring and selection mechanism prepares the system ahead of time to make optimal fetching decisions.
Data Source
AI summary
Methods, systems, and computer readable media for intelligent fetching of storage device commands from submission queues are disclosed. On method is implemented in a data storage device including a controller and a memory. The method includes collecting submission queue command statistics; monitoring resource state of the data storage device. The method further includes using the submission queue command statistics and the resource state to select a submission queue from which a next data storage device command should be fetched. The method further includes fetching the command from the selected submission queue. The method further includes providing the command to command processing logic.


