Adaptive I/O Stack Queue Depth Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In storage area networks, the maximum queue depth settings for I/O requests can lead to inefficient disk usage if too low, or slow down disk servicing if too high, and can cause 'queue full' conditions that reduce overall throughput by preventing additional requests from other workloads.

Innovation Solution

An adaptive I/O stack layer system that includes a classifier insertion module, I/O issuance module, classifier interpretation module, and I/O completion handling module to dynamically adjust the maximum queue depth based on workload priorities and queue full conditions, ensuring efficient issuance and handling of I/O requests.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the maximum queue depth is set too small, then the I/O stack layer issues fewer I/O requests, but throughput decreases and disk usage becomes inefficient

Engineering Contradiction:
Improvequeue management stabilityVSAvoidI/O throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements dynamic adjustment of maximum queue depth values based on real-time workload conditions and disk performance metrics. The system monitors queue full conditions and automatically adjusts the maximum queue depth parameter to optimize throughput while preventing queue overflow, transforming a static configuration parameter into a dynamic control variable that adapts to changing system conditions

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the maximum queue depth parameter dynamically based on workload characteristics and disk response patterns. By adjusting this critical parameter in response to queue full conditions and performance metrics, the system optimizes the balance between maintaining queue stability and maximizing I/O throughput without manual intervention

Inventive Principle:
Principle #35Parameter changes

2Productivity

If the maximum queue depth is set too large, then more I/O requests can be issued, but disk servicing speed decreases

Engineering Contradiction:
ImproveI/O request volumeVSAvoiddisk servicing speed
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The patent implements a feedback mechanism that monitors queue full conditions and disk servicing performance. When the queue approaches full capacity or servicing speed decreases, the system receives feedback and automatically reduces the maximum queue depth, preventing overload and maintaining optimal disk servicing speed while still maximizing reasonable request volume

Inventive Principle:
Principle #23Feedback

3Reliability

If one workload causes a queue full condition at the disk, then additional I/O requests from other workloads are prevented, but overall I/O throughput decreases

Engineering Contradiction:
Improvequeue full preventionVSAvoidoverall I/O throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the I/O request management by implementing separate maximum queue depth controls for different workloads or workload types. This segmentation allows the system to prevent queue full conditions in high-priority or I/O-intensive workloads without unnecessarily limiting other workloads, maintaining overall system throughput while preventing queue overflow in critical paths

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system applies different maximum queue depth settings to different workloads based on their specific characteristics and priorities. By tailoring the queue depth parameter locally to each workload's needs rather than using a uniform setting, the system prevents queue full conditions in sensitive workloads while allowing other workloads to maintain higher throughput

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8893146B2Method and system of an I/O stack for controlling flows of workload specific I/O requests
Publication Date: 2014.11.18 HEWLETT PACKARD ENTERPRISE DEV LP
  • US8893146B2 patent drawing
  • US8893146B2 patent drawing
  • US8893146B2 patent drawing

AI summary

A method and system of a host device hosting multiple workloads for controlling flows of I/O requests directed to a storage device is disclosed. In one embodiment, a type of a response from the storage device reacting to an I/O request issued by an I/O stack layer of the host device is determined. Then, a workload associated with the I/O request is identified among the multiple workloads based on the response to the I/O request. Further, a maximum queue depth assigned to the workload is adjusted based on the type of the response, where the maximum queue depth is a maximum number of I/O requests from the workload which are concurrently issuable by the I/O stack layer.