Virtual Machine Monitor Scheduler Credit Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Virtual machine monitors face challenges in reducing I/O event delays and improving responsiveness, especially for CPU-intensive operations, leading to decreased I/O performance and increased scheduling delays in virtualization environments.

Innovation Solution

A method for scheduling virtual machines that includes a scheduler, a task characteristic evaluation unit, and a credit management unit, which evaluates CPU and I/O intensive degrees to differentially determine credit allocation and apply a boost mechanism frequency based on task characteristics, using equations to calculate credit consumption and loan repayment patterns.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a conventional boost mechanism is applied to VCPUs with I/O event delays, then I/O responsiveness is improved, but CPU-intensive operations continue to consume credit without benefit and scheduling delay increases when multiple virtual machines are active

Engineering Contradiction:
ImproveI/O responsivenessVSAvoidscheduling delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies different credit allocation strategies to different VCPU states: VCPUs in run state receive standard credit allocation while VCPUs in block state with I/O events receive boosted credit allocation. This local differentiation resolves the contradiction by providing targeted I/O responsiveness improvement without unnecessarily increasing scheduling delay for CPU-intensive operations.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The credit allocation is made dynamic based on VCPU state transitions. When a VCPU transitions from run to block state due to an I/O event, the credit allocation changes from standard to boosted. This dynamic adjustment allows the system to improve I/O responsiveness when needed while maintaining normal scheduling for CPU-intensive operations, thereby reducing overall scheduling delay.

Inventive Principle:
Principle #15Dynamics

2Productivity

If credit allocation is increased for VCPUs with delayed I/O events, then I/O performance is improved, but VCPUs performing CPU-intensive operations cannot receive benefit and continue to consume credit

Engineering Contradiction:
ImproveI/O performanceVSAvoidcredit consumption
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent implements local quality by providing enhanced credit allocation specifically to VCPUs in block state with pending I/O events, while VCPUs in run state performing CPU-intensive operations receive standard credit allocation. This targeted approach improves I/O performance without causing excessive credit consumption by CPU-intensive operations.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system uses feedback from VCPU state monitoring to dynamically adjust credit allocation. When the scheduler detects that a VCPU is in block state with a pending I/O event, it triggers boosted credit allocation. This feedback mechanism ensures that credit is allocated based on actual I/O needs rather than uniformly, improving I/O performance while preventing wasteful credit consumption by CPU-intensive operations.

Inventive Principle:
Principle #23Feedback

3Speed

If the boost mechanism is applied frequently to improve event responsiveness, then I/O responsiveness increases, but virtual machine scheduling delay time increases when multiple virtual machines are active

Engineering Contradiction:
Improveevent responsivenessVSAvoidscheduling delay time
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent implements periodic action by applying the boost mechanism only at specific state transitions (when VCPU moves from run to block state due to I/O event) rather than continuously or frequently. This periodic application improves event responsiveness at critical moments while avoiding excessive scheduling delays that would result from frequent boost mechanism activation across multiple active virtual machines.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS10521257B2Method, non-transitory computer readable recording medium, and apparatus for scheduling virtual machine monitor
Publication Date: 2019.12.31 FOUND OF SOONGSIL UNIV IND COOP
  • US10521257B2 patent drawing
  • US10521257B2 patent drawing
  • US10521257B2 patent drawing

AI summary

A method for scheduling a virtual machine monitor having a scheduler, a task characteristic evaluation unit, and a credit management unit is provided. The virtual machine monitor drives at least two domains. The method includes scheduling, by the scheduler, the at least two domains, if an I/O event of each of the at least two domains in which the scheduling is performed is delayed, evaluating, by the task characteristic evaluation unit, a characteristic of a task of the at least two domains based on at least one of a central processing unit (CPU) intensive degree and an input/output (I/O) intensive degree of the at least two domains, differentially determining, by the credit management unit, an amount of credit in which each of the at least two domains retains according to the characteristic of the task, and determining, by the scheduler, an application frequency of a boost mechanism applied to the at least two domains according to the amount of credit.