Parent-Child VM Scheduling on a Shared Physical CPU

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In nested virtualization systems, the parent virtual machine (VM) lacks direct control over step-child VMs, leading to management challenges and inefficiencies due to the absence of nested structure, which complicates scheduling and resource allocation.

Innovation Solution

Implementing a hypervisor that supports uniprocessor control groups, where child VMs are assigned to the same processing unit as the parent VM, allowing the parent VM to manage and prioritize threads directly, thereby enabling control over child VMs without requiring paravirtual interfaces or modifications to the guest operating system.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If child VMs are created with direct access to the hypervisor without nested structure, then direct control and management by parent VM becomes difficult, but system complexity and overhead increase

Engineering Contradiction:
ImproveParent VM control over child VMsVSAvoidVirtualization management complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent implements nested virtualization where a parent VM can create and manage child VMs within its address space. The parent VM's address space contains child VMs, allowing the parent to directly control and manage child VMs through its own address space structures, eliminating the need for complex external management mechanisms.

Inventive Principle:
Principle #7Nested doll (Nesting)

2Productivity

If parent VM manages child VMs through traditional nested structures, then control is maintained, but scheduling and resource allocation efficiency decrease

Engineering Contradiction:
ImproveScheduling and resource allocation efficiencyVSAvoidParent VM control capability
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The patent segments the parent VM's address space into distinct regions, with each region corresponding to a child VM. This segmentation allows efficient scheduling and resource allocation by enabling the parent VM to directly manage child VMs through segmented address space structures, improving productivity while maintaining control.

Inventive Principle:
Principle #1Segmentation

3Ease of operation

If paravirtual interfaces are implemented for parent-child VM communication, then control is enabled, but system complexity and guest OS modification requirements increase

Engineering Contradiction:
ImproveParent-child VM control and communicationVSAvoidInterface complexity and modification requirements
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent enables the parent VM to directly manage and control child VMs through its own address space structures without requiring paravirtual interfaces or guest OS modifications. The parent VM serves itself by utilizing its address space to contain and control child VMs, eliminating the need for additional interface complexity.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS20260023586A1Techniques for managing virtual machines
Publication Date: 2026.01.22 RED HAT INC
  • US20260023586A1 patent drawing
  • US20260023586A1 patent drawing
  • US20260023586A1 patent drawing

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.