GPU Resource Provisioning for Concurrent Query Performance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing GPU database systems lack an efficient method to determine optimal resource allocations for workloads, leading to suboptimal performance and utilization of GPU resources.

Innovation Solution

Utilizing a roofline model and machine learning models to predict performance impacts and determine resource allocations based on attainable compute and memory bandwidth, arithmetic intensity, and peak performance metrics, enabling informed decisions for resource provisioning.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If GPU resources are allocated to multiple concurrent workloads, then resource utilization improves, but performance of individual workloads deteriorates due to resource contention

Engineering Contradiction:
Improveresource utilizationVSAvoidworkload performance
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The system dynamically adjusts resource allocation for each workload based on real-time performance predictions. The resource manager continuously monitors workload characteristics and modifies allocation parameters (such as memory bandwidth, compute units) to maintain optimal performance while maximizing overall GPU utilization across concurrent workloads.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes allocation parameters based on predicted performance impacts. By analyzing workload characteristics against a resource model, the system adjusts parameters like memory allocation, compute resource distribution, and execution scheduling to balance individual workload performance with overall system utilization.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If resource allocation is increased for a workload, then performance improves, but resource availability for other workloads deteriorates

Engineering Contradiction:
Improveworkload performanceVSAvoidresource availability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The system performs preliminary performance prediction and resource allocation planning before executing workloads. By predicting the performance impact of different allocation scenarios in advance, the system can make informed decisions about resource distribution that optimize both individual workload performance and overall system adaptability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses performance feedback from executed workloads to refine future resource allocation decisions. By monitoring actual performance outcomes and comparing them with predictions, the system adjusts allocation strategies to maintain optimal performance while preserving resource availability for diverse workload types.

Inventive Principle:
Principle #23Feedback

3Productivity

If resource allocation is optimized for specific workload types, then performance for those workloads improves, but adaptability to different workload types deteriorates

Engineering Contradiction:
Improveworkload performanceVSAvoidworkload type flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The resource model and prediction system are designed to be universal across different workload types. By creating a generalized resource model that captures fundamental GPU performance characteristics applicable to various workload categories, the system achieves both specialized optimization and broad adaptability without requiring workload-specific configuration.

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

Data Source

PatentUS12596577B2Resource provisioning
Publication Date: 2026.04.07 MICROSOFT TECHNOLOGY LICENSING LLC
  • US12596577B2 patent drawing
  • US12596577B2 patent drawing
  • US12596577B2 patent drawing

AI summary

A system provisioning resources of a processing unit. The system predicts a performance impact on a workload attributable to a performance constraint of the processing unit for the workload according to a resource model, wherein the workload includes a query and the resource model characterizes attainable compute bandwidth, attainable memory bandwidth, and arithmetic intensity based on peak compute bandwidth and peak memory bandwidth of the processing unit. The system determines a resource allocation of the processing unit, based on the predicted performance impact and instructs the processing unit to allocate the resources for processing the workload based on the determined resource allocation.