Arbitration Weight Assignment for NVMe Queue Determinism
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In data storage systems employing the NVMe standard, simple arbitration schemes like round robin or first-in-first-out can lead to inequitable resource utilization among queues, resulting in inconsistent data access performance, as queues with larger data volumes dominate system resources, affecting I/O determinism and peak performance.
Innovation Solution
A data storage system is configured with semiconductor memory organized into die sets, where an arbitration circuit assigns an arbitration weight to each queue based on predicted execution parameters, allowing proactive queue selection and skipping during deterministic windows to balance data access requests and enhance consistency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If simple arbitration schemes like round robin or first-in-first-out are used, then the arbitration process is simple and easy to implement, but queues with larger data volumes dominate system resources resulting in inconsistent data access performance
Solution Approach 1:
The patent changes the arbitration parameter from simple queue indexing (round robin) or FIFO ordering to execution time prediction values. By predicting execution parameters and using these as arbitration weights, the system achieves fair resource allocation while maintaining implementation simplicity through parameter transformation rather than complex structural changes.
Solution Approach 2:
The system performs preliminary prediction of execution parameters for data access requests before arbitration occurs. This preliminary action allows the arbitration circuit to make informed decisions about queue selection based on predicted execution times, preventing resource domination by large queues before it happens, rather than reacting after performance inconsistency occurs.
2Productivity
If queues with larger data volumes are serviced first, then data throughput is maximized, but I/O determinism is affected and peak performance is compromised
Solution Approach 1:
The arbitration system dynamically adjusts queue selection based on predicted execution parameters rather than following a fixed schedule or simple priority rules. This dynamic approach allows the system to adapt to varying queue conditions and data volumes, maximizing throughput when possible while maintaining I/O determinism by preventing any single queue from monopolizing resources.
Solution Approach 2:
The system uses predicted execution parameters as feedback to guide arbitration decisions. By continuously evaluating execution predictions and adjusting queue selection accordingly, the system can balance throughput optimization with I/O determinism requirements, ensuring that no queue consistently dominates resource usage while still processing large data volumes efficiently.
3Productivity
If arbitration weight is assigned based on predicted execution parameters, then queue execution is balanced and resource utilization is optimized, but the arbitration process becomes more complex
Solution Approach 1:
The patent introduces an execution parameter prediction circuit as an intermediary between the simple arbitration logic and the queue execution mechanism. This intermediary component performs the complex prediction calculations and provides simplified arbitration weights to the arbitration circuit, thereby distributing complexity to a specialized component while keeping the core arbitration logic relatively simple.
4Reliability
If deterministic windows are implemented to ensure I/O determinism, then I/O consistency is improved, but data access performance may be reduced due to queue skipping
Solution Approach 1:
The system performs preliminary prediction of execution parameters and assigns arbitration weights before entering deterministic windows. This preliminary action allows the arbitration circuit to pre-determine queue selection sequences that will maintain I/O determinism during the window, reducing the need for last-minute queue skipping while still guaranteeing deterministic behavior.
Data Source
AI summary
A data storage system can organize a semiconductor memory into a first data set and a second data set with a first queue populated with a first data access request from a host. An assignment of an arbitration weight to the first queue with an arbitration circuit corresponds with the first queue being skipped during a deterministic window based on the arbitration weight.


