VMEXIT Configuration for Bare Metal VM Performance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Virtualization technologies face inefficiencies due to frequent VMEXITS, which slow down task execution in virtualized environments compared to bare metal environments, and there is a need for virtual machines that simulate bare metal performance to improve efficiency and resource sharing in cloud computing.

Innovation Solution

A high-performance virtual machine configuration is implemented by selecting and generating a VMEXIT configuration that minimizes VMEXITS, allowing tasks to execute without interruptions typically causing VMEXITS, such as reading from a performance monitoring unit MSR or executing specific instructions, thereby enhancing performance and resource utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a virtual machine uses a normal VMEXIT configuration to ensure proper monitoring and control, then system control and security are maintained, but task execution performance deteriorates due to frequent VMEXITS

Engineering Contradiction:
Improvetask execution performanceVSAvoidsystem control
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent changes the parameters of the VMEXIT configuration by selectively enabling and disabling specific VMEXIT conditions. The hypervisor configures the VMCS to allow certain instructions (like performance monitoring unit MSR reads) to execute without causing VMEXITS, while maintaining other control mechanisms. This parameter adjustment resolves the contradiction by optimizing execution performance without completely sacrificing system control.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent applies local quality by differentiating between different types of VMEXIT conditions. Instead of a uniform approach, the hypervisor selectively applies different VMEXIT policies to different instructions and operations. Critical control functions maintain VMEXIT monitoring, while performance-sensitive operations are allowed to execute freely, thus resolving the contradiction between control and performance.

Inventive Principle:
Principle #3Local quality

2Speed

If a virtual machine allows frequent VMEXITS to maintain security and control, then system security is ensured, but execution speed deteriorates compared to bare metal environments

Engineering Contradiction:
Improveexecution speedVSAvoidVMEXIT interruptions
Core Design Contradiction:
SpeedVSObject-affected harmful factors

Solution Approach 1:

The patent extracts specific VMEXIT conditions from the general VMEXIT handling mechanism. By identifying and removing the requirement for VMEXITS on certain operations (like performance monitoring instructions), the system eliminates unnecessary interruptions. This extraction resolves the contradiction by removing harmful VMEXIT interruptions while preserving essential security and control functions.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent performs preliminary configuration of the VMCS before task execution, pre-setting the VMEXIT behavior for various instructions. The hypervisor anticipates which instructions will cause VMEXITS and configures the VMEXIT mask accordingly before the task runs, thereby preventing unnecessary VMEXIT interruptions and improving execution speed while maintaining security.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If a hypervisor uses a standard VMCS configuration for all virtual machines, then system simplicity and ease of management are maintained, but performance optimization for specific workloads is lost

Engineering Contradiction:
Improvevirtual machine performanceVSAvoidVMCS configuration complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces dynamics by making the VMCS configuration adaptable rather than static. The hypervisor dynamically configures the VMEXIT behavior based on the specific workload and performance requirements of each virtual machine. This dynamic approach resolves the contradiction by allowing performance optimization for different workloads while maintaining a manageable configuration process through automated detection and setup.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11182184B2Implementing high-performance virtual machines for bare metal simulation
Publication Date: 2021.11.23 RED HAT INC
  • US11182184B2 patent drawing
  • US11182184B2 patent drawing
  • US11182184B2 patent drawing

AI summary

Implementing high-performance virtual machines for bare metal simulation is disclosed. A hypervisor executing on a host computer receives a request to initiate a high-performance (HP) virtual machine (VM). The hypervisor selects, based on the request, a HP virtual machine exit (VMEXIT) configuration from a plurality of different VMEXIT configurations. Each respective VMEXIT configuration of the plurality of different VMEXIT configurations identifies VMEXIT behavior in response to a task executing in a VM having a virtual machine control structure (VMCS) generated based on the respective VMEXIT configuration. The hypervisor generates a HP VMCS for the HP VM based on the HP VMEXIT configuration, the HP VMCS controlling the VMEXIT behavior in response to a task executing in the HP VM. The hypervisor initiates the HP VM.