Arbitration Weight Assignment for NVMe Queue Determinism

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvearbitration implementation simplicityVSAvoiddata access performance consistency
Core Design Contradiction:
Ease of operationVSReliability

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.

Inventive Principle:
Principle #35Parameter 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.

Inventive Principle:
Principle #10Preliminary action

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

Engineering Contradiction:
Improvedata throughputVSAvoidI/O determinism
Core Design Contradiction:
ProductivityVSReliability

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.

Inventive Principle:
Principle #15Dynamics

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.

Inventive Principle:
Principle #23Feedback

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

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidarbitration circuit complexity
Core Design Contradiction:
ProductivityVSDevice complexity

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

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

Engineering Contradiction:
ImproveI/O determinism consistencyVSAvoiddata access performance
Core Design Contradiction:
ReliabilityVSProductivity

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.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11481342B2Data storage system data access arbitration
Publication Date: 2022.10.25 SEAGATE TECH LLC
  • US11481342B2 patent drawing
  • US11481342B2 patent drawing
  • US11481342B2 patent drawing

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.