Host Scheduler for Heterogeneous GPU Resource Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems fail to fairly allocate GPU resources among virtual machines (VMs) due to disparity in graphics command complexity and GPU processing capabilities, leading to monopolization and sub-optimal throughput.

Innovation Solution

A computing device assigns shares to users with VMs, generates composite scores for GPUs based on processing capabilities, adjusts shares based on graphics command characteristics, and allocates quantum to VMs, ensuring fair distribution and scheduling of graphics commands across GPUs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If GPU resources are allocated using first-in, first-out manner without considering command complexity or GPU capabilities, then implementation is simple, but resource allocation fairness deteriorates and throughput decreases

Engineering Contradiction:
ImprovethroughputVSAvoidallocation mechanism complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent changes the allocation parameters from simple FIFO ordering to a composite score system that incorporates command complexity metrics and GPU capability metrics. This allows the system to evaluate and allocate resources based on multiple parameters simultaneously, improving throughput by matching appropriate workloads to suitable GPUs while maintaining fairness among users.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent introduces a host-based scheduler as an intermediary between the GPU drivers and the physical GPUs. This mediator evaluates command characteristics, determines fairness metrics, and makes intelligent allocation decisions, thereby resolving the contradiction between simple allocation and optimal throughput without requiring complex changes at the GPU driver level.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If all graphics commands are treated as originating from a single user, then driver implementation is simplified, but resource allocation fairness among multiple users deteriorates

Engineering Contradiction:
Improvedriver implementation simplicityVSAvoidresource allocation fairness
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The host-based scheduler acts as an intermediary layer that maintains the simple single-user interface expected by GPU drivers while simultaneously implementing multi-user fairness mechanisms. The scheduler tracks user-specific allocations and command characteristics, ensuring fair resource distribution without complicating the driver implementation.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the resource allocation function into two distinct layers: the GPU driver layer that handles simple command submission, and the host-based scheduler layer that handles complex multi-user fairness management. This segmentation allows each layer to operate independently with appropriate complexity, maintaining driver simplicity while achieving fairness.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If heterogeneous GPUs with different processing capabilities are allocated without considering their specific characteristics, then hardware utilization flexibility is improved, but allocation optimization deteriorates

Engineering Contradiction:
Improvehardware configuration flexibilityVSAvoidGPU throughput
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent incorporates GPU capability parameters (such as processing power, memory bandwidth, and architectural features) into the composite score calculation. This allows the system to differentiate between heterogeneous GPUs and make optimized allocation decisions that match workload characteristics to appropriate GPU capabilities, thereby maximizing throughput while maintaining the flexibility to use diverse hardware configurations.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9898795B2Host-based heterogeneous multi-GPU assignment
Publication Date: 2018.02.20 VMWARE INC
  • US9898795B2 patent drawing
  • US9898795B2 patent drawing
  • US9898795B2 patent drawing

AI summary

Examples of the disclosure assign a plurality of graphics processing units (GPUs) to a plurality of virtual machines (VMs) or processes. A composite score is generated for each GPU. The composite score represents the normalized processing capabilities of the multiple GPUs. Based on a comparison between the composite scores and allocated quantum corresponding to a proportional amount of GPU resources to which each VM is entitled, each VM is assigned to at least one of the GPUs. Graphics commands from the VMs are scheduled for execution by the assigned GPUs.