Virtual GPU Scaling via Live Migration and Placement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The complexity of managing and scaling distributed computing systems, particularly in providing virtualized graphics processing across multiple geographical locations, leads to challenges in resource provisioning, administration, and network latency optimization.

Innovation Solution

The implementation of virtual compute instances with attachable virtual GPUs, allowing for dynamic scaling and placement optimization based on user input or workload changes, enabling live migration and application-specific graphics processing without requiring application relaunching.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If virtualized graphics processing is implemented across multiple geographical locations, then resource provisioning flexibility is improved, but network latency increases

Engineering Contradiction:
Improveresource provisioning flexibilityVSAvoidnetwork latency
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

A placement service acts as an intermediary between compute instance requests and GPU resources, intelligently matching instances with optimally located GPUs to minimize latency while maintaining provisioning flexibility. The placement service analyzes workload requirements and physical resource locations to make optimal placement decisions.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

GPUs are pre-provisioned and physically distributed across multiple geographical locations before compute instances are created. This preliminary placement of resources allows the system to immediately satisfy compute instance requests with low-latency local GPUs, avoiding the need for dynamic resource allocation that would increase latency.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If GPU resources are dynamically allocated to virtual compute instances, then resource utilization efficiency is improved, but system complexity increases

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

A single GPU resource can serve multiple virtual compute instances simultaneously through dynamic allocation and migration capabilities. The GPU virtualization layer provides universal access to multiple workloads, improving utilization efficiency while the underlying hardware remains unchanged.

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

Solution Approach 2:

GPU resources are virtualized to create multiple virtual GPU instances that can be copied and allocated to different compute instances. This virtual copying allows efficient resource sharing without duplicating physical hardware, managing complexity through software abstractions.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If GPU migration is implemented between compute instances, then adaptability to workload changes is improved, but migration overhead increases

Engineering Contradiction:
Improveadaptability to workload changesVSAvoidmigration overhead
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

GPU allocation is made dynamic through live migration capabilities, allowing GPUs to be moved between compute instances based on changing workload requirements. This dynamic reconfiguration enables the system to adapt to workload changes without physical hardware changes.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

GPU migration is designed to minimize disruption to compute instances, maintaining continuous useful action during the migration process. The system ensures that graphics workloads continue to execute with minimal interruption, reducing the effective overhead of migration operations.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS9904975B2Scaling for virtualized graphics processing
Publication Date: 2018.02.27 AMAZON TECH INC
  • US9904975B2 patent drawing
  • US9904975B2 patent drawing
  • US9904975B2 patent drawing

AI summary

Methods, systems, and computer-readable media for scaling for virtualized graphics processing are disclosed. A first virtual GPU is attached to a virtual compute instance of a provider network. The provider network comprises a plurality of computing devices configured to implement a plurality of virtual compute instances with multi-tenancy. The first virtual GPU is replaced by a second virtual GPU based at least in part on a change in GPU requirements for the virtual compute instance. The first and second virtual GPUs are implemented using physical GPU resources that are accessible to the virtual compute instance over a network. Processing for the virtual compute instance is migrated from the first virtual GPU to the second virtual GPU. An application is executed using the second virtual GPU on the virtual compute instance.