I/O Module Request Delaying for Storage Channel Bottlenecks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-user computing systems, the finite and hard-to-expand data Input/Output (I/O) channel poses challenges in managing resource utilization, as multiple users share a limited data storage channel, leading to potential bottlenecks and performance issues.
Innovation Solution
The system evaluates the I/O history of each requester and determines whether to delay file-level requests based on predefined or calculated criteria, using an I/O module that manages the data storage channel utilization by creating a history for each user and adjusting request prioritization to optimize channel usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multiple users share the data storage channel simultaneously, then resource utilization increases, but performance bottlenecks and channel exhaustion occur
Solution Approach 1:
The system monitors I/O channel usage by each requester and uses this feedback to dynamically adjust request handling. When a requester exceeds usage thresholds, the system detects this through history evaluation and modifies its behavior by delaying subsequent requests from that requester, thereby preventing channel exhaustion while maintaining high overall utilization
Solution Approach 2:
The system dynamically adjusts the handling of I/O requests based on real-time channel usage patterns. Instead of static allocation, the system evaluates requester history and adapts its response in real-time, delaying requests from high-usage requesters while allowing requests from low-usage requesters to proceed, creating a dynamic balance that prevents bottlenecks
2Reliability
If the system delays file-level requests from high-usage requesters, then channel exhaustion is prevented, but request processing time increases
Solution Approach 1:
The system applies partial delay action only to requests from high-usage requesters who are approaching channel exhaustion thresholds, rather than delaying all requests uniformly. This selective approach delays only the necessary portion of requests to prevent channel overload, while allowing other requests to proceed without delay, thereby minimizing overall time loss
Solution Approach 2:
The system applies different handling qualities to different requesters based on their individual usage patterns. High-usage requesters experience request delays while low-usage requesters experience no delay, creating localized quality differences in service delivery that prevent channel exhaustion without unnecessarily impacting overall system performance
Data Source
AI summary
The management of data storage channel utilization in a computing system that has multiple users. The system receives file-level requests from requesters and then creates a history for each requester. Upon evaluating the history of each requester, the system determines whether to delay the file-level requests from entering the file system stack based on the result of the evaluation. The system delays one or more of the file-level requests if the history of the corresponding requester meets one or more criteria. If the history of the corresponding requester does not meet the criteria, the system allows the file-level requests to be passed to the file system stack without being delayed.


