DPU TCP Offload for Direct GPU Memory Transfer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional computer networks rely on host CPUs to handle TCP data packet processing, which consumes CPU cycles and increases latency due to memory transfer times between CPU and GPU.

Innovation Solution

A DPU is used to handle TCP processing, directly transferring data packets to GPU memory via DMA, allowing GPUs to process TCP data in real-time without CPU intervention.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If host CPU handles TCP data packet processing, then TCP connections are managed properly, but CPU cycles are consumed and latency increases

Engineering Contradiction:
ImproveTCP connection managementVSAvoidCPU cycle availability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts TCP processing functionality from the host CPU and relocates it to a separate DPU device. The DPU receives TCP packets via network interface, manages TCP connections, reorders packets, and transfers data to GPU memory, thereby freeing the host CPU from these tasks while maintaining reliable TCP connection management.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The DPU acts as an intermediary device between the network interface and the GPU. It receives packets from the network, processes TCP protocols, reorders packets if needed, and transfers data to GPU memory, serving as a mediator that handles TCP management responsibilities away from the host CPU.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If data is transferred from CPU memory to GPU memory, then data processing can proceed, but transfer time increases latency

Engineering Contradiction:
ImproveData processing throughputVSAvoidMemory transfer latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent extracts the data transfer operation from the traditional CPU-memory-GPU path and redirects it through the DPU. The DPU transfers data directly to GPU memory using DMA transfers, eliminating the intermediate step of copying data to CPU memory first, thereby reducing transfer latency and improving throughput.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent replaces the software-based data copying mechanism (CPU reading from memory and writing to GPU memory) with a hardware-based DMA transfer system in the DPU. This substitution eliminates the need for CPU intervention in data transfer, reducing latency and improving efficiency.

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

3Ease of operation

If host CPU processes all TCP packets, then complete control is maintained, but processing speed decreases

Engineering Contradiction:
ImproveTCP processing controlVSAvoidPacket processing speed
Core Design Contradiction:
Ease of operationVSSpeed

Solution Approach 1:

The patent segments TCP processing responsibilities between the host CPU and the DPU. The host CPU retains control over high-level TCP connection management, while the DPU handles packet-level operations including reception, reordering, and data extraction. This segmentation enables parallel processing and improves overall packet processing speed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The DPU serves as an intermediary that handles time-critical packet processing operations. It receives packets from the network interface, performs rapid reordering based on sequence numbers, and transfers data to GPU memory, thereby accelerating packet processing while the host CPU maintains supervisory control.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20260065410A1Processing TCP packets with a DPU and GPU
Publication Date: 2026.03.05 NVIDIA CORP
  • US20260065410A1 patent drawing
  • US20260065410A1 patent drawing
  • US20260065410A1 patent drawing

AI summary

Apparatuses, systems, methods, and techniques to obtain information transmitted in data packets and store data, based at least in part on the information, in GPU memory. In at least one embodiment, the information is obtained and stored in GPU memory without using a central processing unit (CPU). In at least one embodiment, a data processing unit (DPU) recieves incoming data packets, stores information based at least in part on the data packets in DPU memory, and intiates a transfer directly to GPU memory. In at least one embodiment, the data packets are TCP data packets.