Storage Device QoS Controller for Thread Resource Throttling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current host-based Quality of Service (QoS) technologies fail to effectively manage storage device resources as they scale, leading to disruptions in storage performance due to the inability to control consumption of hardware and software component resources by threads unrelated to current workloads, such as low priority tasks and scrubbers.

Innovation Solution

Implementing novel QoS technologies that monitor and analyze input/output workloads to identify out-of-context threads, throttle their access to component resources, and generate resource consumption policies using machine learning engines to optimize resource allocation and ensure consistent storage performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If host-based QoS technologies are used to manage storage device resources, then resource allocation can be controlled, but the system fails to effectively manage storage device resources as they scale, leading to disruptions in storage performance

Engineering Contradiction:
Improvestorage performance consistencyVSAvoidresource management scalability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces a storage device-level QoS controller as an intermediary between the host and storage components. This mediator monitors workload characteristics, identifies out-of-context threads, and enforces resource consumption policies directly at the storage device, bypassing the limitations of host-based control and enabling effective resource management as the system scales.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments resource management control from the host level to the storage device level. By dividing the QoS management function into independent storage device components that can autonomously monitor and control their own resource consumption, the system gains scalability while maintaining performance consistency.

Inventive Principle:
Principle #1Segmentation

2Productivity

If threads unrelated to current workloads (e.g., low priority tasks and scrubbers) are allowed to run freely, then system functionality is maintained, but their uncontrolled consumption of hardware and software component resources disrupts storage performance

Engineering Contradiction:
Improvestorage performanceVSAvoidcomponent resource consumption
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent implements dynamic resource allocation where thread priorities and resource access rights are not fixed but adjust based on workload characteristics. The QoS controller dynamically identifies out-of-context threads and modifies their resource consumption in real-time, allowing the system to optimize productivity while controlling energy loss adaptively.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of thread resource consumption by introducing QoS policies that modify CPU cycles, memory access, and I/O bandwidth allocation for specific threads. By changing these consumption parameters dynamically based on workload analysis, the system maintains necessary thread functionality while preventing resource disruption.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If resource consumption policies are generated using machine learning engines, then resource allocation can be optimized, but the system complexity increases

Engineering Contradiction:
Improveresource allocation efficiencyVSAvoidQoS system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements self-service through machine learning engines that autonomously analyze workload patterns, generate resource consumption policies, and optimize resource allocation without requiring complex external configuration or manual intervention. The system serves itself by automatically adapting to changing workload characteristics.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent incorporates feedback loops where the QoS controller continuously monitors resource consumption and workload characteristics, uses machine learning to analyze this feedback data, and adjusts resource allocation policies accordingly. This closed-loop feedback mechanism optimizes productivity while managing complexity through automated adaptation.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11599441B2Throttling processing threads
Publication Date: 2023.03.07 EMC IP HLDG CO LLC
  • US11599441B2 patent drawing
  • US11599441B2 patent drawing
  • US11599441B2 patent drawing

AI summary

Embodiments of the present disclosure relate to throttling processing threads of a storage device. One or more input/output (I/O) workloads of a storage device can be monitored. One or more resources consumed by each thread of each storage device component to process each operation included in a workload can be analyzed. Based on the analysis, consumption of each resource consumed by each thread can be controlled.