Network-Interface Allreduce Acceleration with ALU Buffer Aggregation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face challenges in designing efficient collective operations and associated network hardware that can scale effectively with the rapid growth in the number of GPUs and compute nodes in parallel computing environments, particularly for deep learning training workloads.

Innovation Solution

A novel implementation of the allreduce algorithm is provided, leveraging enhanced network interface card (NIC) hardware with an integrated Arithmetic Logic Unit (ALU), cache, and address translation unit to accelerate bulk data collective operations, allowing for overlapped execution with gradient computation and optimizing communication latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If collective operations are offloaded to network switches to improve performance, then communication speed is improved, but device complexity increases significantly

Engineering Contradiction:
Improvecommunication speedVSAvoidsoftware and hardware complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent extracts the collective operation functionality from the network switch and relocates it to the host system's GPU. By implementing allreduce operations directly on the GPU using shared memory and atomics, the complexity is removed from the network hardware while maintaining high performance. This allows the switch to remain a simple networking device while still achieving fast collective communications.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces shared memory as an intermediary between the GPU cores and the network interface. This shared memory buffer serves as a mediator that enables efficient data exchange between processes without requiring complex switch-based collective operations. The shared memory allows atomics and synchronization mechanisms to work directly on GPU memory, eliminating the need for complex network hardware involvement.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Power

If the number of GPUs and compute nodes is increased to handle larger workloads, then computational capability is improved, but the time spent on host-based collective operations increases

Engineering Contradiction:
Improvecomputational capabilityVSAvoidtime for collective operations
Core Design Contradiction:
PowerVSLoss of time

Solution Approach 1:

The patent replaces the traditional host-based CPU collective operations with GPU-accelerated collective operations. By moving the allreduce implementation from the CPU to the GPU, the system leverages the GPU's parallel processing capabilities to perform collective operations much faster. This substitution eliminates the bottleneck where CPU-based operations become increasingly time-consuming as the number of GPUs scales up.

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

Solution Approach 2:

The patent changes the fundamental parameter of where collective operations are executed - from host CPU memory to device GPU shared memory. This parameter change enables the operations to scale efficiently with the number of GPUs because the GPU can perform atomics and memory operations in parallel across all cores, maintaining constant operation time even as the system size increases.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If switch-based collective operations are implemented to accelerate communication, then communication performance is improved, but scalability to match growing number of GPUs is limited

Engineering Contradiction:
Improvecommunication performanceVSAvoidscalability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent makes the GPU serve multiple functions: it acts as both the computational unit for training and the execution unit for collective operations. By implementing allreduce directly on the GPU using its own shared memory and atomic operations, the GPU becomes universal - it performs both computation and communication coordination without requiring separate specialized hardware. This universality enables perfect scalability as the same GPU architecture supports any number of GPUs in the cluster.

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

Data Source

PatentUS12346274B2System and method for implementing a network-interface-based allreduce operation
Publication Date: 2025.07.01 HEWLETT PACKARD ENTERPRISE DEV LP
  • US12346274B2 patent drawing
  • US12346274B2 patent drawing
  • US12346274B2 patent drawing

AI summary

An apparatus is provided that includes a network interface to transmit and receive data packets over a network; a memory including one or more buffers; an arithmetic logic unit to perform arithmetic operations for organizing and combining the data packets; and a circuitry to receive, via the network interface, data packets from the network; aggregate, via the arithmetic logic unit, the received data packets in the one or more buffers at a network rate; and transmit, via the network interface, the aggregated data packets to one or more compute nodes in the network, thereby optimizing latency incurred in combining the received data packets and transmitting the aggregated data packets, and hence accelerating a bulk data allreduce operation. One embodiment provides a system and method for performing the allreduce operation. During operation, the system performs the allreduce operation by pacing network operations for enhancing performance of the allreduce operation.