Storage Task Scheduling for Low Latency and Sustainability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data storage systems face inefficiencies in scheduling, leading to increased I/O latency due to unutilized resources and starvation of background processing, as prior approaches fail to effectively manage resource allocation between I/O and background tasks.
Innovation Solution
A method that classifies tasks into multiple classes with specific shares and priorities, prioritizing latency-critical tasks and allocating resources accordingly, ensuring timely processing of I/O requests while maintaining bandwidth-critical tasks to prevent resource starvation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If the priority of I/O processing is increased to reduce latency, then I/O latency is improved, but background processing is starved and resources are wasted
Solution Approach 1:
The patent segments tasks into multiple classes (I/O tasks, background tasks, administrative tasks) with different priorities and shares. This segmentation allows the system to allocate resources differently to different task types, ensuring that I/O tasks get priority access when needed while background tasks receive guaranteed minimum resources, thus resolving the contradiction between reducing I/O latency and maintaining background processing productivity.
2Productivity
If background processing is allowed to use more resources to catch up on delayed tasks, then background processing throughput is improved, but I/O latency increases
Solution Approach 1:
The patent implements dynamic resource allocation where the scheduler continuously monitors system state and adjusts task scheduling decisions in real-time. The multi-class scheduler dynamically determines how much resource share each task class receives based on current system conditions, allowing background processing to receive more resources when I/O latency is low while preventing background tasks from consuming excessive resources when I/O latency is high, thus dynamically resolving the contradiction between the two objectives.
3Loss of time
If resources are allocated strictly by priority to meet latency targets, then I/O latency is improved, but system utilization decreases due to free resources going unutilized
Solution Approach 1:
The patent applies different resource allocation qualities to different task classes. High-priority I/O tasks receive preferential treatment with lower latency guarantees, while lower-priority background tasks receive resource shares that allow them to utilize otherwise idle resources. This local differentiation of resource quality allows the system to meet I/O latency targets while simultaneously improving overall system utilization by putting otherwise free resources to work on background processing.
Data Source
AI summary
A technique for scheduling access to a resource arranges tasks into multiple classes, where each class has a respective share and a respective priority. The share of a class sets an amount of access allocated to the class, and the priority sets an order in which the class can use its share, with higher priority classes getting access before lower-priority classes. The technique assigns latency-critical tasks, such as synchronous I/O tasks, to a first class having the highest priority and assigns bandwidth-critical tasks, such as background I/O processing, to a second class having a lower priority.


