Virtual Machine GPU Offloading via Remote Intermediary

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Lightweight computers without discrete GPUs cannot efficiently run virtual machines that require intensive GPU usage due to the absence of specialized hardware, limiting their ability to perform general-purpose computing on graphics processing units (GPGPU).

Innovation Solution

A system and method that intercepts GPU computation requests from user applications in a virtual machine without a discrete GPU, transmitting these requests to a remote computer with a physical GPU for execution, and retrieving the results to load them into the virtual machine's memory, allowing for offloading of GPU computations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a discrete GPU is installed in a physical computer to enable GPGPU for virtual machines, then computational capability is improved, but device complexity and cost increase

Engineering Contradiction:
ImproveGPGPU capabilityVSAvoidhardware configuration
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a cloud-based GPU service as an intermediary between the virtual machine and the physical GPU. The system includes a compute module that intercepts GPU computation requests from VMs lacking discrete GPUs and forwards them to a cloud service, which executes the computations on remote GPUs and returns results. This mediator enables GPGPU capability without requiring physical GPU hardware in the client system.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent implements a virtualized GPU architecture where the physical GPU is copied or emulated through software abstraction layers. The compute module creates a virtual representation of GPU functionality that can be accessed by VMs without physical hardware, allowing GPU computations to be performed remotely and copied back to the client system when needed.

Inventive Principle:
Principle #26Copying

2Adaptability or versatility

If a discrete GPU is installed in a physical computer to enable GPGPU for virtual machines, then computational capability is improved, but cost increases

Engineering Contradiction:
ImproveGPGPU capabilityVSAvoidhardware cost
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The cloud-based GPU service acts as a cost-effective intermediary that eliminates the need for expensive discrete GPU hardware in each client system. Instead of purchasing and maintaining physical GPUs in every computer, organizations can access GPU computing power through the cloud service, significantly reducing hardware costs while maintaining GPGPU capability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a universal GPU access model where a single physical GPU in the cloud can serve multiple virtual machines simultaneously. This multi-functional approach allows one expensive GPU resource to be shared across many clients, reducing the overall cost per user compared to equipping each client with its own discrete GPU.

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

3Device complexity

If GPU computations are offloaded to a remote computer, then hardware requirements for the local system are reduced, but communication overhead and latency increase

Engineering Contradiction:
Improvelocal hardware requirementsVSAvoidcommunication time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The compute module serves as an optimized intermediary that manages the communication between local VMs and remote GPU services. It handles data serialization, transmission, and result retrieval efficiently, minimizing communication overhead. The intermediary also manages the computational workflow to reduce idle waiting time and optimize the overall execution time despite the remote location of the GPU.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10698731B1Systems and methods for executing parallel computations for virtual machines
Publication Date: 2020.06.30 PARALLELS INT GMBH
  • US10698731B1 patent drawing
  • US10698731B1 patent drawing
  • US10698731B1 patent drawing

AI summary

A system and method is provided for performing computations on a virtual machine without a special hardware computation unit, such as a discrete graphics processing unit (GPU). The described method uses a computation module to intercept requests from a user application executing in a virtual machine on a first physical computer. The intercepted requests may include requests to configure GPU computation grids, start and finish accelerated code execution, and transfer data to and from the special computation unit. The computation module offloads accelerated code to a second physical computer having a physical special hardware unit (e.g., discrete GPU).