Virtual CPU Queue Scheduling for I/O Latency and Fairness
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In virtualization scenarios, existing CPU scheduling methods fail to ensure fair resource allocation between computing-intensive and I/O-intensive tasks, leading to poor performance and real-time execution of I/O-intensive tasks due to resource competition.
Innovation Solution
Implement a scheduling method that dynamically adjusts the scheduling priorities of virtual CPUs based on their resource consumption, placing I/O-intensive tasks in higher priority queues and computing-intensive tasks in lower priority queues, ensuring real-time execution of I/O-intensive tasks while providing sufficient resources to computing-intensive tasks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If existing CPU scheduling methods are used in virtualization scenarios, then computing-intensive tasks can obtain sufficient CPU resources, but I/O-intensive tasks experience poor performance and cannot achieve real-time execution due to resource competition
Solution Approach 1:
The scheduling method dynamically adjusts the priority of virtual machines based on their task characteristics. I/O-intensive virtual machines are assigned higher scheduling priorities to ensure timely execution, while computing-intensive virtual machines are assigned lower priorities. This dynamic priority adjustment resolves the contradiction by making the scheduling system adaptive to different task types, ensuring both real-time execution for I/O tasks and sufficient resource allocation for computing tasks.
Solution Approach 2:
The patent applies different scheduling strategies to different virtual machines based on their specific characteristics. By identifying whether a virtual machine is I/O-intensive or computing-intensive, the system applies localized quality adjustments to scheduling priorities. This allows I/O-intensive tasks to receive preferential treatment in terms of scheduling priority while computing-intensive tasks receive adequate but not preferential resource allocation, thus resolving the resource competition issue.
2Power
If CPU resources are allocated to computing-intensive tasks, then processing power is sufficient, but I/O-intensive tasks suffer from resource competition and poor performance
Solution Approach 1:
The scheduling method dynamically adjusts the priority of virtual machines based on their task characteristics. I/O-intensive virtual machines are assigned higher scheduling priorities to ensure timely execution, while computing-intensive virtual machines are assigned lower priorities. This dynamic priority adjustment resolves the contradiction by making the scheduling system adaptive to different task types, ensuring both real-time execution for I/O tasks and sufficient resource allocation for computing tasks.
Solution Approach 2:
The system monitors the characteristics of virtual machine tasks and provides feedback to the scheduler. Based on this feedback regarding whether tasks are I/O-intensive or computing-intensive, the scheduler adjusts priorities accordingly. This feedback mechanism ensures that CPU resources are dynamically reallocated to match actual task needs, improving I/O task performance while maintaining adequate support for computing tasks.
3Stability of the object's composition
If equal scheduling priority is assigned to all virtual machines, then resource allocation appears fair, but I/O-intensive tasks cannot achieve real-time execution due to competition with computing-intensive tasks
Solution Approach 1:
The patent applies different scheduling strategies to different virtual machines based on their specific characteristics. By identifying whether a virtual machine is I/O-intensive or computing-intensive, the system applies localized quality adjustments to scheduling priorities. This allows I/O-intensive tasks to receive preferential treatment in terms of scheduling priority while computing-intensive tasks receive adequate but not preferential resource allocation, thus resolving the resource competition issue.
Solution Approach 2:
The scheduling method dynamically adjusts the priority of virtual machines based on their task characteristics. I/O-intensive virtual machines are assigned higher scheduling priorities to ensure timely execution, while computing-intensive virtual machines are assigned lower priorities. This dynamic priority adjustment resolves the contradiction by making the scheduling system adaptive to different task types, ensuring both real-time execution for I/O tasks and sufficient resource allocation for computing tasks.
Data Source
AI summary
A scheduling method and a computer system. The scheduling method comprises: according to scheduling priorities respectively corresponding to a plurality of queues which are configured for a physical CPU, sequentially scheduling virtual CPUs in the plurality of queues to run; and when an accumulated running time of the virtual CPU of any virtual machine reaches a set running time of the virtual machine that corresponds to the current scheduling priority, reducing the scheduling priority of the virtual machine, and adding, to the queue corresponding to the current scheduling priority of the virtual machine, at least one virtual CPU which is in the virtual machine and is in a startup state, wherein according to a sequence of the scheduling priorities from high to low, set running times of the virtual machine that correspond to the plurality of scheduling priorities sequentially increase.


