Adaptive Computation Routing in Heterogeneous GPU Environments

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing frameworks for heterogeneous computing environments, such as CUDA, require programmers to manually determine which computations should be executed on CPUs or GPUs, leading to sub-optimal performance due to varying hardware resources and performance characteristics.

Innovation Solution

A method for intelligent, adaptive routing of computations that profiles the performance of CPUs and GPUs to build a model that dynamically decides where to route computations for maximum efficiency, adapting to changes in the environment and optimizing performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If computations are manually routed to CPU or GPU by programmers, then implementation control is maintained, but performance optimization is lost due to varying hardware resources and performance characteristics

Engineering Contradiction:
Improvecomputation execution performanceVSAvoidrouting decision complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system performs self-service by automatically profiling its own hardware resources (CPU and GPU) and building performance models without external intervention. The runtime system autonomously collects performance data, constructs computational models, and makes routing decisions, eliminating the need for manual programmer configuration while optimizing performance based on actual hardware characteristics.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system dynamically changes routing parameters based on profiled performance characteristics. By measuring actual execution times and resource utilization during profiling, the system adjusts its computational models and routing decisions to match the specific hardware configuration, transforming static manual routing into dynamic adaptive routing that responds to varying hardware parameters.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If a fixed routing strategy is used, then implementation is simple, but adaptability to dynamic hardware environments and changing workloads is reduced

Engineering Contradiction:
Improveadaptability to hardware changesVSAvoidrouting system complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The routing system transitions from static to dynamic operation through continuous profiling and model updating. The system adaptively adjusts its computational models based on changing workload characteristics and hardware performance, allowing it to respond to dynamic environments while maintaining manageable complexity through automated processes rather than manual reconfiguration.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system implements feedback loops where performance data from actual computation execution is collected during runtime, used to refine computational models, and then applied to improve subsequent routing decisions. This continuous feedback mechanism enables the system to adapt to hardware changes and workload variations automatically, balancing adaptability with controlled complexity through iterative optimization.

Inventive Principle:
Principle #23Feedback

3Measurement precision

If comprehensive hardware profiling is performed, then accurate performance models are built, but initial setup time and computational overhead increase

Engineering Contradiction:
Improveperformance model accuracyVSAvoidprofiling and model construction time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary hardware profiling and model construction during system initialization or idle periods before actual computational workloads arrive. By preparing accurate performance models in advance through comprehensive hardware characterization, the system minimizes profiling time during productive operations, balancing measurement precision with time efficiency through proactive preparation.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10676200B2Machine-implemented method for the adaptive, intelligent routing of computations in heterogeneous computing environments
Publication Date: 2020.06.09 CENTERSPACE SOFTWARE LLC
  • US10676200B2 patent drawing
  • US10676200B2 patent drawing
  • US10676200B2 patent drawing

AI summary

A machine-implemented method for the intelligent, adaptive routing of computations in heterogeneous GPU computing environments is provided herein. The method is implemented by a machine as a series of machine-executable steps that cause the machine to route mathematical and statistical computations in engineering, scientific, financial, and general-purpose applications to the processor, or a plurality of processors, that is best able to process the computations.