Parent-Child VM Control Using Shared-Core vCPU Groups
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In nested virtualization systems, parent virtual machines lack direct control over child virtual machines, leading to management challenges and inefficiencies, particularly in distributed computing environments, as they cannot stop child VMs without modifying guest operating systems or using paravirtual interfaces.
Innovation Solution
Implement a hypervisor that supports a uniprocessor control group, where all threads within the group run on the same host processing unit, allowing parent VMs to assign priority levels and send signals to control child VMs directly, enabling efficient management without requiring modifications to the guest operating system.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If parent VMs create child VMs using nested virtualization, then resource utilization improves, but control over child VMs is lost
Solution Approach 1:
The patent implements nested virtualization where a parent VM can create and manage child VMs. The parent VM acts as a hypervisor for its children, enabling hierarchical resource allocation while maintaining control through signal-based communication mechanisms between parent and child VMs.
Solution Approach 2:
The patent introduces control groups as an intermediary mechanism that enables the parent VM to send signals to child VMs. These control groups act as mediators that facilitate communication and control between the parent VM and child VMs without requiring direct hypervisor intervention, thus maintaining ease of operation while enabling nested virtualization.
2Adaptability or versatility
If child VMs are allowed to run independently, then system autonomy improves, but context switching overhead increases
Solution Approach 1:
The patent merges the parent VM and child VM into the same control group, allowing them to share the same physical processing unit. This combining reduces context switching overhead by keeping related VMs on the same core, while still maintaining system autonomy through signal-based control mechanisms that allow independent execution when needed.
Solution Approach 2:
The patent implements dynamic control where the parent VM can send signals to child VMs to control their execution. This dynamic mechanism allows the system to adapt between independent operation and coordinated control based on runtime conditions, balancing autonomy with overhead reduction.
3Measurement precision
If hypervisor manages all VMs directly, then control precision improves, but system complexity increases
Solution Approach 1:
The patent segments the virtualization management into hierarchical levels: the hypervisor manages parent VMs with high control precision, while parent VMs in turn manage their child VMs. This segmentation reduces system complexity by distributing control responsibilities, while control precision is maintained through signal-based mechanisms that enable fine-grained control at each level.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Systems and methods are disclosed for managing child virtual machines. An example method includes receiving, at a hypervisor running on a host computer system, a request from a parent virtual machine (VM) to create a child VM, wherein the parent VM includes a first virtual Central Processing Unit (vCPU). The method also includes creating, by the hypervisor responsive to the request, the child VM using a portion of computing resources allocated to the parent VM. The method also includes assigning a second vCPU to the child VM. The method also includes assigning the first vCPU and the second vCPU to a control group that forces the first vCPU and the second vCPU to be assigned to a same physical processing unit and gives the first vCPU of the parent VM a higher priority level.