Storage I/O Priority Balancing for Fair Multi-Client Throughput

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage device operation methods either underutilize processing capacity through performance throttling or unfairly treat clients with varying request rates in work sharing arrangements.

Innovation Solution

Adjust submission priorities for input-output commands from client computers using a weighted round robin sampler to balance processing load and fairness, ensuring full utilization of storage device capacity while minimizing latency and unfairness.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If performance throttling is used to allocate processing load capacity to each client, then fairness among clients is improved, but full utilization of storage device capacity is not achieved

Engineering Contradiction:
ImprovefairnessVSAvoidcapacity utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies dynamics by making the IOPS allocation dynamic rather than static. The system continuously monitors actual IOPS usage by each client and adjusts their allocated capacity in real-time. When a client's demand increases, their allocation increases accordingly, allowing the storage device to fully utilize its capacity while maintaining fairness through proportional allocation based on actual needs.

Inventive Principle:
Principle #15Dynamics

2Productivity

If work sharing arrangement is used to allow unlimited request flow from each client, then full utilization of storage device capacity is achieved, but latency increases for clients with low processing loads

Engineering Contradiction:
Improvecapacity utilizationVSAvoidlatency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements feedback by continuously monitoring the actual IOPS usage of each client and using this information to adjust their allocation. The system measures how much IOPS each client actually consumes and feeds this information back into the allocation mechanism, ensuring that clients with low processing loads receive appropriate attention and their latency is minimized while still allowing full capacity utilization.

Inventive Principle:
Principle #23Feedback

3Reliability

If performance throttling limits IOPS flow from each client, then sustained performance is maintained, but requests from high-demand clients are unnecessarily slowed down

Engineering Contradiction:
Improvesustained performanceVSAvoidrequest processing speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The system dynamically adjusts IOPS allocation based on actual client demand. Instead of imposing static limits that slow down high-demand clients, the system monitors usage patterns and allocates capacity dynamically. When a client requires more IOPS, their allocation increases automatically, allowing them to process requests at full speed without unnecessary throttling, while maintaining sustained performance through proportional allocation.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP4325346B1Balancing throughput and fairness of storage devices in a multi-client environment
Publication Date: 2026.04.22 GOOGLE LLC
  • EP4325346B1 patent drawingFigure 1
  • EP4325346B1 patent drawingFigure 2
  • EP4325346B1 patent drawingFigure 3

AI summary

In a computer system where multiple client computers share use of a storage device, submission priorities for input-output commands from the computers are adjusted when one or more of the client computers exceeds its quota of usage. The submission priorities for the client computers which are exceeding their quota are reduced relative to submission priorities for client computers which are not exceeding their quotas. This allows up to full usage of the processing capacity of the storage device, while minimizing effects such as unfairness and latency experienced by the other client computers.