File System Write Distribution for NVMe Submission Queues

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional file systems lack integration with NVMe architecture, leading to inefficient write channeling, static queue associations, and fixed queue depths, which limits performance improvements despite the superior capabilities of NVMe technology.

Innovation Solution

A computational device configures a storage system with multiple submission queues, categorizes writes into full, medium, and small track writes, and dynamically adjusts arbitration priorities and queue depths based on write frequency and processor core performance to optimize write processing across NVMe queues.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional file systems are used with NVMe storage, then compatibility is maintained, but performance is limited due to lack of integration with NVMe architecture

Engineering Contradiction:
Improvestorage system performanceVSAvoidintegration with NVMe architecture
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic queue depth adjustment for NVMe submission queues based on write characteristics. The system monitors write patterns and dynamically modifies queue depths to optimize performance, transforming the static queue configuration into a dynamic one that adapts to workload conditions, thereby resolving the contradiction between maintaining traditional file system compatibility and achieving NVMe performance optimization

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes key parameters including queue depth, arbitration priority, and write distribution strategy based on NVMe architecture requirements. By modifying these parameters dynamically according to write characteristics (sequential vs. random, read vs. write), the system achieves both compatibility with traditional file systems and optimized performance for NVMe devices

Inventive Principle:
Principle #35Parameter changes

2Productivity

If writes are distributed randomly among submission queues, then simplicity is maintained, but performance efficiency is reduced

Engineering Contradiction:
Improvewrite processing efficiencyVSAvoidwrite distribution mechanism
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a feedback mechanism where the system monitors write characteristics and performance metrics, then uses this information to dynamically adjust write distribution strategies across submission queues. This closed-loop control optimizes write processing efficiency by directing different types of writes (sequential, random, small, large) to appropriate queues based on real-time conditions, resolving the contradiction between simple random distribution and efficient performance-oriented distribution

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system applies different distribution strategies to different types of writes based on their characteristics. Instead of uniform random distribution, the patent channels sequential writes, random writes, small writes, and large writes to different submission queues with appropriate priorities and depths, creating localized optimization for each write type while maintaining overall system efficiency

Inventive Principle:
Principle #3Local quality

3Productivity

If static queue associations are used, then system simplicity is maintained, but performance optimization is limited

Engineering Contradiction:
Improvequeue processing performanceVSAvoidqueue management system
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent transforms static queue associations into dynamic ones by implementing runtime adjustment of queue depths and arbitration priorities based on workload characteristics. The system continuously adapts queue configurations to match current write patterns, enabling performance optimization without requiring complex manual configuration, thus resolving the contradiction between simplicity and performance

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs preliminary classification of writes based on their characteristics (sequential/random, size, read/write type) before submitting them to queues. This pre-processing step enables optimized queue assignment and depth configuration in advance, improving performance while keeping the overall system management relatively simple through automated classification rules

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11675539B2File system operations for a storage supporting a plurality of submission queues
Publication Date: 2023.06.13 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11675539B2 patent drawing
  • US11675539B2 patent drawing
  • US11675539B2 patent drawing

AI summary

A computational device configures a storage system that supports a plurality of submission queues. A file system monitors characteristics of received writes to distribute the writes among the plurality of submission queues. The computational device categorizes the writes into full track writes, medium track writes, and small track writes, measures a frequency of different categories of writes determined based on the categorization of the writes, and generates arbitrations of the writes with varying priorities for distributing the writes for processing in the submission queues. A full track write includes writing incoming data blocks of the writes received to a fresh track, in response to a total size of the incoming data blocks being equal to or more than a size of one full track. A medium track write includes overwriting an existing data track. A small track write includes staging the incoming data blocks to a caching storage.