Distributed AI Pipeline Partitioning Across GPUs With RDMA

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Single GPUs often lack sufficient processing throughput to complete complex AI tasks, such as real-time processing of high-resolution video streams, within the required timeframe.

Innovation Solution

A processing pipeline is partitioned across multiple computational accelerators, such as GPUs, connected by a packet communication network, with each partition executed on a corresponding accelerator, utilizing RDMA transactions for data transfer between stages.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a single GPU is used to process complex AI tasks, then the system structure is simple, but the processing throughput is insufficient

Engineering Contradiction:
Improveprocessing throughputVSAvoidsystem structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The processing pipeline is divided into multiple partitions, with each partition containing one or more processing stages. Each partition is executed on a separate computational accelerator, allowing the system to distribute the processing workload across multiple devices. This segmentation enables higher throughput by utilizing multiple GPUs simultaneously while maintaining manageable system complexity through modular partitioning.

Inventive Principle:
Principle #1Segmentation

2Productivity

If multiple computational accelerators are used to increase processing throughput, then the processing speed improves, but the data transfer overhead increases

Engineering Contradiction:
Improveprocessing throughputVSAvoiddata transfer time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

A network interface controller (NIC) is introduced as an intermediary between computational accelerators to manage data transfer. The NIC executes remote direct memory access (RDMA) transactions, enabling efficient data transfer between accelerators without burdening the CPU. This intermediary approach minimizes data transfer overhead and allows parallel processing to proceed with reduced communication delays.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces traditional CPU-mediated data transfer with RDMA technology, which allows direct memory-to-memory transfers between accelerators over the network. This substitution eliminates the mechanical bottleneck of CPU involvement in data transfer, significantly reducing transfer time and enabling faster inter-accelerator communication.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Productivity

If processing stages are distributed across multiple accelerators, then the processing capacity increases, but the system complexity increases

Engineering Contradiction:
Improveprocessing capacityVSAvoidpipeline distribution complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent employs a universal interface and communication protocol (RDMA) that works across all computational accelerators in the distributed system. This universality allows different accelerators to be interconnected through a standardized mechanism, reducing the complexity of managing heterogeneous devices. The same NIC and RDMA protocol can handle data transfer between any pair of accelerators, simplifying the overall system architecture.

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

Data Source

PatentUS12499082B2Disaggregation of processing pipeline
Publication Date: 2025.12.16 NVIDIA CORP
  • US12499082B2 patent drawing
  • US12499082B2 patent drawing
  • US12499082B2 patent drawing

AI summary

A method for processing includes receiving a definition of a processing pipeline including multiple sequential processing stages. The processing pipeline is partitioned into a plurality of partitions. The first partition of the processing pipeline is executed on a first computational accelerator, whereby the first computational accelerator writes output data from a final stage of the first partition to an output buffer in a first memory. The output data are copied over a packet communication network to an input buffer in a second memory. The second partition of the processing pipeline is executed on a second computational accelerator using the copied output data in the second memory as input data to a first stage of the second partition.