Filesystem Asynchronous I/O Scheduling with Configurable Queue Ratios

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing filesystems lack flexibility in processing resource acquisition requests, leading to monopolization by one type of request, delayed execution of higher-priority requests, and inadequate handling of latency-sensitive requests, with no known system allowing administrators to tune processing effectively.

Innovation Solution

A method involving user-configurable metering and queue management, where resource acquisition requests are sorted into queues with configurable ratios and importance ratings, ensuring that more important requests are prioritized and latency-sensitive requests are expedited, with a separate queue for metadata requests having an infinite quota.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If resource acquisition requests are processed using a single queue or simple round-robin scheduling, then the system structure is simple and easy to implement, but one type of request may monopolize filesystem access or higher-priority requests may be delayed

Engineering Contradiction:
Improvesimplicity of schedulingVSAvoidfilesystem access efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent segments resource acquisition requests into multiple queues based on their characteristics (e.g., read requests, write requests, metadata requests). Each queue can be managed independently with different scheduling parameters, preventing any single type of request from monopolizing filesystem access while maintaining structured organization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic scheduling where the number of threads allocated to each queue and the processing order can be adjusted based on current system conditions and administrator-configurable parameters. This allows the system to adaptively prioritize different request types without requiring a complete redesign of the scheduling architecture.

Inventive Principle:
Principle #15Dynamics

2Productivity

If more threads are allocated to process resource acquisition requests faster, then throughput is improved, but latency-sensitive requests may still be delayed by non-latency-sensitive requests

Engineering Contradiction:
Improverequest processing throughputVSAvoidlatency of critical requests
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments requests into different queues based on latency sensitivity and other characteristics. By allocating threads to specific queues rather than having all threads compete for all requests, the system can process latency-sensitive requests in dedicated queues without being blocked by non-latency-sensitive requests, while still maintaining high overall throughput through parallel processing across multiple queues.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different scheduling qualities to different queues - for example, latency-sensitive queues may receive preferential treatment with higher priority scheduling or dedicated thread allocation, while non-latency-sensitive queues can be processed with standard scheduling. This allows each queue to receive the appropriate level of service quality matching its requirements.

Inventive Principle:
Principle #3Local quality

3Device complexity

If the system uses fixed scheduling rules for resource acquisition requests, then the scheduling logic is simple and predictable, but the system cannot adapt to different operating environments or prioritize specific request types

Engineering Contradiction:
Improvescheduling logic complexityVSAvoidconfigurability for different environments
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent implements a dynamic scheduling system where administrators can configure parameters such as the number of threads per queue, priority levels, and scheduling policies based on specific operating environment requirements. These configurations can be adjusted without changing the underlying system architecture, allowing the same filesystem to be optimized for different workloads and environments.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent allows modification of scheduling parameters (e.g., queue priorities, thread allocation ratios, scheduling algorithms) to adapt the system to different operating environments. By changing these parameters rather than the fundamental scheduling mechanism, the system maintains relative simplicity while achieving high adaptability to various deployment scenarios.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8635256B2Network filesystem asynchronous I/O scheduling
Publication Date: 2014.01.21 HEWLETT PACKARD ENTERPRISE DEV LP
  • US8635256B2 patent drawing
  • US8635256B2 patent drawing
  • US8635256B2 patent drawing

AI summary

Resource acquisition requests for a filesystem are executed under user configurable metering. Initially, a system administrator sets a ratio of N:M for executing N read requests for M write requests. As resource acquisition requests are received by a filesystem server, the resource acquisition requests are sorted into queues, e.g., where read and write requests have at least one queue for each type, plus a separate queue for metadata requests as they are executed ahead of any waiting read or write request. The filesystem server controls execution of the filesystem resource acquisition requests to maintain the ratio set by the system administrator.