Elastic Inference Service for GPU Resource Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Deep learning inference workloads are costly and inefficient to run in production due to overprovisioning of GPUs, leading to wasteful and expensive infrastructure costs.

Innovation Solution

An elastic inference service that allows for the attachment and detachment of accelerator slots, providing cost-efficient hardware acceleration by decoupling CPU and memory resources, and supporting multiple precision levels, enabling flexible and efficient use of hardware resources across multiple applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If GPUs are used to improve deep learning inference performance, then computational efficiency is improved, but infrastructure cost increases due to overprovisioning

Engineering Contradiction:
Improvecomputational efficiencyVSAvoidinfrastructure cost
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent segments accelerator resources into virtual accelerator slots that can be independently allocated and attached to different compute instances. This segmentation allows fine-grained resource allocation, enabling multiple applications to share physical GPU resources without requiring full GPU provisioning for each application, thereby reducing infrastructure costs while maintaining computational efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic attachment and detachment of virtual accelerator slots to compute instances based on workload demands. This dynamic allocation allows the system to optimize resource utilization in real-time, ensuring computational efficiency is maintained when needed while reducing infrastructure costs during low-utilization periods through elastic scaling.

Inventive Principle:
Principle #15Dynamics

2Speed

If full GPU acceleration is provisioned for each application, then performance is improved, but resource utilization efficiency deteriorates due to overprovisioning

Engineering Contradiction:
Improveinference performanceVSAvoidresource utilization efficiency
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The patent creates virtual accelerator slots that can be universally attached to multiple different compute instances and applications. A single physical GPU can serve multiple virtual slots that are dynamically allocated to different applications based on their performance needs, enabling one resource to perform multiple functions and improving overall resource utilization efficiency while maintaining required inference performance.

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

Solution Approach 2:

The patent creates virtual copies of accelerator resources through virtual accelerator slots. These virtual copies can be attached to multiple compute instances simultaneously, allowing applications to access accelerator performance without requiring dedicated physical GPUs. The virtualization layer manages the copying and sharing of actual GPU resources, improving resource utilization while maintaining performance.

Inventive Principle:
Principle #26Copying

3Device complexity

If CPU and memory resources are coupled with accelerator resources, then system simplicity is maintained, but flexibility deteriorates due to inability to independently scale resources

Engineering Contradiction:
Improvesystem architecture simplicityVSAvoidresource allocation flexibility
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent segments the system into independent resource components: compute instances with CPU and memory, and separately managed virtual accelerator slots. This segmentation allows each resource type to be independently provisioned, scaled, and attached based on specific workload requirements, providing flexibility while maintaining manageable system complexity through clear separation of concerns.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a virtualization layer as an intermediary between physical accelerator resources and compute instances. This intermediary manages the attachment and detachment of virtual accelerator slots to compute instances, enabling flexible resource allocation while abstracting the complexity of resource management from both the hardware and application layers, thus maintaining system simplicity.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Stability of the object's composition

If accelerator resources are statically allocated, then system stability is improved, but adaptability deteriorates due to inability to respond to changing workload demands

Engineering Contradiction:
Improvesystem stabilityVSAvoidworkload adaptability
Core Design Contradiction:
Stability of the object's compositionVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic attachment and detachment of virtual accelerator slots to compute instances based on real-time workload demands. This dynamic approach allows the system to maintain stability through consistent performance during normal operation while adapting to changing conditions by弹性ally allocating or releasing accelerator resources, thus resolving the contradiction between stability and adaptability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent incorporates feedback mechanisms that monitor workload demands and automatically adjust the allocation of virtual accelerator slots accordingly. This feedback-driven approach ensures system stability by maintaining appropriate resource levels while enabling adaptability to changing workload conditions, as the system continuously responds to performance metrics and demand signals.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11494621B2Attached accelerator selection and placement
Publication Date: 2022.11.08 AMAZON TECH INC
  • US11494621B2 patent drawing
  • US11494621B2 patent drawing
  • US11494621B2 patent drawing

AI summary

Implementations detailed herein include description of a computer-implemented method. In an implementation, the method at least includes receiving an application instance configuration, an application of the application instance to utilize a portion of an attached accelerator during execution of a machine learning model and the application instance configuration including an arithmetic precision of the machine learning model to be used in determining the portion of the accelerator to provision; provisioning the application instance and the portion of the accelerator attached to the application instance, wherein the application instance is implemented using a physical compute instance in a first location, wherein the portion of the accelerator is implemented using a physical accelerator in the second location; loading the machine learning model onto the portion of the accelerator; and performing inference using the loaded machine learning model of the application using the portion of the accelerator on the attached accelerator.