Hypervisor vCPU Hot-Unplugging for Overcommitted Processor Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In data centers, managing processor overcommit for virtual machines leads to unpredictable latencies and performance penalties due to scheduling conflicts when multiple virtual processors share a single physical processor, and underutilization of physical processors results in inefficient resource allocation.

Innovation Solution

Implementing a method for low-overhead vCPU hot unplugging by a hypervisor that detects overcommitted or undercommitted physical processors, allowing for efficient scheduling adjustments by hot-unplugging or hot-plugging virtual CPUs without shutting down virtual machines, using techniques like inter-processor interrupts or shared memory notifications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple virtual processors are scheduled to run on a single physical processor, then hardware utilization rate is improved, but unpredictable latencies and performance penalties occur due to scheduling conflicts

Engineering Contradiction:
Improvehardware utilization rateVSAvoidlatency predictability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system dynamically monitors the commit state of physical processors and adjusts virtual CPU allocation in real-time. The hypervisor detects when a physical processor transitions between under-committed and over-committed states and dynamically hot-plugs or hot-unplugs virtual CPUs accordingly, making the system adaptable to changing workload conditions while maintaining latency predictability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the operational parameters of virtual CPUs by modifying their allocation state (plugged in or unplugged) based on the commit state of physical processors. This parameter change allows the system to optimize hardware utilization while preventing scheduling conflicts that would degrade latency predictability.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If virtual CPUs are hot-unplugged from virtual machines, then scheduling flexibility and resource allocation efficiency are improved, but system complexity increases

Engineering Contradiction:
Improvescheduling flexibilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The hypervisor autonomously monitors the commit state of physical processors and automatically performs hot-plug operations on virtual CPUs without requiring manual intervention or complex external control systems. This self-service approach simplifies the overall system architecture while maintaining high scheduling flexibility.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements a feedback mechanism where the hypervisor continuously monitors the commit state of physical processors and uses this information to make informed decisions about virtual CPU allocation. This feedback loop enables automatic adjustment of resource allocation while keeping the system manageable through clear cause-effect relationships.

Inventive Principle:
Principle #23Feedback

3Reliability

If physical processors are under-utilized, then latency predictability is maintained, but resource allocation efficiency deteriorates

Engineering Contradiction:
Improvelatency predictabilityVSAvoidresource allocation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Rather than statically allocating virtual CPUs to physical processors, the system dynamically adjusts the allocation based on real-time monitoring of processor commit states. This allows the system to maintain latency predictability during low-utilization periods while maximizing resource allocation efficiency during high-utilization periods.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs preliminary monitoring of physical processor commit states and proactively adjusts virtual CPU allocation before performance degradation occurs. By detecting under-committed or over-committed states in advance, the hypervisor can prevent scheduling conflicts and maintain optimal resource utilization.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11281487B2Managing processor overcommit for virtual machines
Publication Date: 2022.03.22 RED HAT INC
  • US11281487B2 patent drawing
  • US11281487B2 patent drawing
  • US11281487B2 patent drawing

AI summary

Systems and methods for managing processor overcommit for virtual machines are disclosed. In one implementation, a processing device may identify, by a hypervisor running on a host computer system, an over-committed physical processor, the physical processor is executing a thread implementing a first virtual processor (vCPU) of a virtual machine (VM). The processing device may further queue, by the hypervisor, a message notifying the VM of hot-unplugging of the first vCPU. Responsive to receiving, by the hypervisor, a notification of a second vCPU of the VM transitioning into an idle state, the processing device may also transmitting the message to the VM.