Virtual Machine Context Skew Detection and Dynamic Coscheduling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In virtual machine environments, strict coscheduling can lead to resource underutilization and performance reduction due to idle physical processors, as some virtual machines cannot run even when there are available resources because all their virtual processors must be coscheduled simultaneously.
Innovation Solution
The solution involves tracking and managing coscheduled contexts by recording transition times between scheduled and descheduled states, detecting skew, and implementing corrective actions such as costop, costart, and coswap policies to reduce skew and ensure efficient resource utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If strict coscheduling is implemented to ensure synchronous execution of virtual processors, then synchronization and correctness are improved, but physical processor utilization deteriorates causing idle processors and reduced overall performance
Solution Approach 1:
The patent implements dynamic coscheduling that adapts between strict and relaxed modes based on system conditions. The scheduler monitors synchronization requirements and resource availability, dynamically adjusting the scheduling policy to maintain correctness when needed while maximizing utilization when possible, thus resolving the contradiction between reliability and productivity
Solution Approach 2:
The system changes the scheduling parameter from fixed strict coscheduling to variable relaxation levels. By adjusting the degree of coscheduling relaxation based on workload characteristics and resource availability, the system can achieve both synchronization where required and improved processor utilization where possible
2Reliability
If strict coscheduling is enforced for all virtual processors, then execution correctness is improved, but system performance deteriorates due to fragmentation and idle resources
Solution Approach 1:
The patent applies partial coscheduling relaxation where only the minimum necessary synchronization is maintained for correctness, rather than enforcing complete strict coscheduling. This allows some flexibility in scheduling while still ensuring execution correctness, thereby improving overall system performance without sacrificing reliability
3Reliability
If all virtual processors of an SMP VM must be coscheduled simultaneously, then synchronization is improved, but resource utilization deteriorates when not all physical processors are available
Solution Approach 1:
The patent segments the coscheduling requirement by allowing individual virtual processors to be scheduled independently when physical resources are constrained, rather than requiring all virtual processors to be scheduled simultaneously. This segmentation enables better resource utilization while maintaining synchronization where possible
Data Source
AI summary
Management of contexts that execute on a computer system is described. More specifically, context scheduling in a virtual machine environment is described. A set of coscheduled contexts is monitored. If a skew metric associated with a first context of the coscheduled contexts fails to satisfy a condition, then a subset of the coscheduled contexts is descheduled although the first context remains scheduled.


