Execution Graph Node Control API for GPU Time and Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Performing computational operations on processing resources such as GPUs is inefficient in terms of memory and time usage due to the lack of effective control over the execution of execution graphs.

Innovation Solution

Implementing an application programming interface (API) to control and indicate the execution of nodes within an execution graph, allowing for dynamic management of graph code portions on GPUs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If execution graphs are used to configure GPU for parallel computational operations, then productivity is improved, but memory and time usage becomes inefficient due to lack of control

Engineering Contradiction:
Improvecomputational operations throughputVSAvoidexecution time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements dynamic control of execution graph nodes through an API that allows runtime enabling and disabling of individual nodes. This dynamic adjustment capability enables the system to adapt execution patterns based on current computational needs, optimizing both productivity and time efficiency by executing only necessary graph portions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The execution graph is divided into independent controllable nodes that can be individually managed through the API. Each node represents a discrete computational unit that can be enabled or disabled separately, allowing selective execution of graph portions. This segmentation enables fine-grained control over resource usage and execution time.

Inventive Principle:
Principle #1Segmentation

2Productivity

If execution graphs are used to configure GPU for parallel computational operations, then productivity is improved, but memory usage becomes inefficient due to lack of control

Engineering Contradiction:
Improvecomputational operations throughputVSAvoidmemory usage
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The API enables dynamic control over which execution graph nodes are active at any given time. By selectively enabling only the necessary nodes for current computational tasks, the system optimizes memory utilization while maintaining high productivity. Unused nodes can be disabled to free up memory resources.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

By segmenting the execution graph into individually controllable nodes, the system can allocate memory resources more efficiently. Each node can be enabled or disabled independently, allowing the GPU to allocate memory only for the currently active computational units rather than pre-allocating for the entire graph.

Inventive Principle:
Principle #1Segmentation

3Device complexity

If static execution graphs are used, then device complexity is reduced, but adaptability is worsened due to inability to dynamically control node execution

Engineering Contradiction:
Improveexecution graph structureVSAvoiddynamic execution control
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The execution graph structure serves multiple functions: it maintains a static organizational framework for simplicity while enabling dynamic control through the API. The same graph structure can be used for both static configuration and runtime adaptation, making the system versatile without increasing inherent structural complexity.

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

Solution Approach 2:

The API acts as an intermediary layer between the static execution graph structure and the dynamic control requirements. This intermediary enables adaptability by providing control interfaces without modifying the underlying graph structure, thus maintaining simplicity while adding versatility.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12461800B2Application programming interface to control execution of graph nodes
Publication Date: 2025.11.04 NVIDIA CORP
  • US12461800B2 patent drawing
  • US12461800B2 patent drawing
  • US12461800B2 patent drawing

AI summary

Apparatuses, systems, and techniques to facilitate execution graph control. In at least one embodiment, an application programming interface comprising one or more parameters is used to control which of one or more portions of graph code are to be performed.