Dynamic Computational Resource Allocation for Machine Learning Models

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing techniques for allocating computational resources to trained machine learning models often result in resource wastage or performance degradation, as they either assume worst-case scenarios or require pruning to reduce resource usage.

Innovation Solution

A computer-implemented method that determines available computational resources and allocates them based on performance requirements, allowing dynamic adjustment of resource allocation to tasks performed by machine learning models without compromising performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If computational resources are allocated based on worst-case scenario assumptions, then model performance requirements are ensured, but computational resource waste increases

Engineering Contradiction:
Improvemodel performance requirementVSAvoidcomputational resource waste
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent implements dynamic resource allocation by adjusting computational resources allocated to ML models based on real-time conditions. The system monitors actual resource usage and performance metrics, then dynamically modifies resource allocation to match current needs rather than relying on static worst-case assumptions. This resolves the contradiction by making resource allocation adaptive - ensuring performance when needed while avoiding waste during low-demand periods.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes resource allocation parameters dynamically based on observed performance and usage patterns. By monitoring actual resource consumption and model performance, the system adjusts allocation parameters (such as CPU/GPU allocation, memory allocation) to optimize the balance between ensuring performance requirements and minimizing resource waste, rather than maintaining fixed worst-case allocation levels.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If ML models are pruned to require fewer computational resources, then resource efficiency improves, but model performance degrades

Engineering Contradiction:
Improveresource efficiencyVSAvoidmodel performance
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

Instead of statically pruning models to improve efficiency, the patent employs dynamic resource allocation that adjusts computational resources based on real-time performance requirements and actual usage patterns. This allows the system to maintain full model capabilities when performance is needed while achieving efficiency during lower-demand periods, avoiding the performance degradation inherent in static pruning approaches.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system allocates computational resources dynamically, providing partial resource allocation when full resources are not needed and excessive resources when performance requirements demand it. This flexible approach avoids the permanent performance loss from pruning while achieving efficiency through selective resource allocation based on actual needs rather than predetermined model compression.

Inventive Principle:
Principle #16Partial or excessive action

3Adaptability or versatility

If computational resources are allocated for multiple ML tasks, then task coverage increases, but resource allocation complexity increases

Engineering Contradiction:
Improvetask coverageVSAvoidresource allocation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a universal resource allocation framework that handles multiple diverse ML tasks through a single dynamic allocation system. This framework monitors resource usage and performance across all tasks and applies unified allocation rules that adapt to different task requirements, enabling the system to manage diverse workloads without proportionally increasing allocation complexity.

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

Solution Approach 2:

The system employs feedback mechanisms that monitor resource usage and performance metrics across multiple tasks, then use this information to automatically adjust resource allocation. This closed-loop approach simplifies complexity by using observed patterns and performance data to drive allocation decisions, rather than requiring complex predetermined allocation rules for each possible task scenario.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS20240231928A1Techniques for balancing dynamic inferencing by machine learning models
Publication Date: 2024.07.11 NVIDIA CORP
  • US20240231928A1 patent drawing
  • US20240231928A1 patent drawing
  • US20240231928A1 patent drawing

AI summary

Techniques are disclosed herein for allocating computational resources when executing trained machine learning models. The techniques include determining one or more available computational resources that are usable by one or more trained machine learning models to perform one or more tasks, allocating one or more computational resources to the one or more tasks based on the one or more available computational resources and one or more performance requirements associated with the one or more tasks, and causing the one or more trained machine learning models to perform the one or more tasks using the one or more computational resources allocated to the one or more tasks.