Multi-Profile GPU Placement Algorithm for Virtual Machine Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing VM placement algorithms assume each physical GPU supports a single virtual GPU profile, leading to sub-optimal or incorrect placement decisions when future generations of GPU virtualization technologies support multiple virtual GPU profiles.

Innovation Solution

A multi-profile aware placement algorithm that optimally places virtual GPU-configured VMs on physical GPUs supporting multiple virtual GPU profiles, considering homogenous or heterogeneous GPU models and adhering to user-defined placement preferences.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If existing placement algorithms are used that assume single virtual GPU profile per physical GPU, then placement decisions are simple to implement, but placement efficiency and resource utilization become sub-optimal when multiple profiles are supported

Engineering Contradiction:
Improveplacement efficiencyVSAvoidalgorithm complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The placement algorithm transitions from a static single-profile assumption to a dynamic multi-profile awareness capability. The algorithm now adapts its placement decisions based on the actual number of profiles supported by each physical GPU, allowing it to optimize resource allocation whether GPUs support one or multiple virtual GPU profiles.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The placement algorithm is designed to handle multiple scenarios universally: it can place VMs on physical GPUs supporting a single virtual GPU profile as well as on physical GPUs supporting multiple profiles. This multi-functional capability ensures the algorithm remains effective across different GPU virtualization configurations without requiring separate algorithms for each case.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If physical GPUs are partitioned into virtual GPUs with different framebuffer memory sizes (multiple profiles), then resource flexibility increases, but placement algorithm accuracy deteriorates under existing single-profile assumptions

Engineering Contradiction:
Improveresource flexibilityVSAvoidplacement accuracy
Core Design Contradiction:
Adaptability or versatilityVSMeasurement precision

Solution Approach 1:

The system performs preliminary classification of physical GPUs into single-profile and multi-profile categories before executing the placement algorithm. This pre-processing step ensures that the placement logic has accurate information about each GPU's profile capabilities, enabling precise placement decisions that match VM requirements with appropriate GPU resources.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The placement algorithm applies different placement strategies tailored to each physical GPU's specific characteristics. For single-profile GPUs, the algorithm uses straightforward matching, while for multi-profile GPUs, it employs enhanced logic that considers multiple virtual GPU profile options, ensuring each GPU receives the most appropriate placement treatment for its capabilities.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20250208899A1Placing virtual graphics processing unit (GPU)-configured virtual machines on physical GPUS supporting multiple virtual GPU profiles
Publication Date: 2025.06.26 VMWARE INC
  • US20250208899A1 patent drawing
  • US20250208899A1 patent drawing
  • US20250208899A1 patent drawing

AI summary

In one set of embodiments, a computer system can receive a request to provision a virtual machine (VM) in a host cluster, where the VM is associated with a virtual graphics processing unit (GPU) profile indicating a desired or required framebuffer memory size of a virtual GPU of the VM. In response, the computer system can execute an algorithm that identifies, from among a plurality of physical GPUs installed in the host cluster, a physical GPU on which the VM may be placed, where the identified physical GPU has sufficient free framebuffer memory to accommodate the desired or required framebuffer memory size, and where the algorithm allows multiple VMs associated with different virtual GPU profiles to be placed on a single physical GPU in the plurality of physical GPUs. The computer system can then place the VM on the identified physical GPU.