Table of Contents
Fetching ...

HetCCL: Accelerating LLM Training with Heterogeneous GPUs

Heehoon Kim, Jaehwan Lee, Taejeoung Kim, Jongwon Park, Jinpyo Kim, Pyongwon Suh, Ryan H. Choi, Sangwoo Lee, Jaejin Lee

TL;DR

HetCCL tackles the lack of cross-vendor collective communication in DL by enabling transparent interoperability between NVIDIA and AMD GPUs. It decouples cross-vendor coordination from vendor-specific kernels through a runtime API abstraction (TACC) and platform-specific, multi-vendor kernel compilation, while leveraging RDMA for efficient data movement. Key contributions include a cross-vendor RDMA mechanism, the TACC abstraction, zero-code modification deployment, and GPU-aware workload balancing, all validated on a multi-node, mixed-vendor cluster with end-to-end training speedups and preserved model accuracy. The work has practical impact by expanding hardware options for large-scale LLM training, reducing time-to-solution and enabling cost-effective utilization of heterogeneous GPU pools without altering existing DL frameworks.

Abstract

The rapid growth of large language models is driving organizations to expand their GPU clusters, often with GPUs from multiple vendors. However, current deep learning frameworks lack support for collective communication across heterogeneous GPUs, leading to inefficiency and higher costs. We present HetCCL, a collective communication library that unifies vendor-specific backends and enables RDMA-based communication across GPUs without requiring driver modifications. HetCCL introduces two novel mechanisms that enable cross-vendor communication while leveraging optimized vendor libraries, NVIDIA NCCL and AMD RCCL. Evaluations on a multi-vendor GPU cluster show that HetCCL matches NCCL and RCCL performance in homogeneous setups while uniquely scaling in heterogeneous environments, enabling practical, high-performance training with both NVIDIA and AMD GPUs without changes to existing deep learning applications.

HetCCL: Accelerating LLM Training with Heterogeneous GPUs

TL;DR

HetCCL tackles the lack of cross-vendor collective communication in DL by enabling transparent interoperability between NVIDIA and AMD GPUs. It decouples cross-vendor coordination from vendor-specific kernels through a runtime API abstraction (TACC) and platform-specific, multi-vendor kernel compilation, while leveraging RDMA for efficient data movement. Key contributions include a cross-vendor RDMA mechanism, the TACC abstraction, zero-code modification deployment, and GPU-aware workload balancing, all validated on a multi-node, mixed-vendor cluster with end-to-end training speedups and preserved model accuracy. The work has practical impact by expanding hardware options for large-scale LLM training, reducing time-to-solution and enabling cost-effective utilization of heterogeneous GPU pools without altering existing DL frameworks.

Abstract

The rapid growth of large language models is driving organizations to expand their GPU clusters, often with GPUs from multiple vendors. However, current deep learning frameworks lack support for collective communication across heterogeneous GPUs, leading to inefficiency and higher costs. We present HetCCL, a collective communication library that unifies vendor-specific backends and enables RDMA-based communication across GPUs without requiring driver modifications. HetCCL introduces two novel mechanisms that enable cross-vendor communication while leveraging optimized vendor libraries, NVIDIA NCCL and AMD RCCL. Evaluations on a multi-vendor GPU cluster show that HetCCL matches NCCL and RCCL performance in homogeneous setups while uniquely scaling in heterogeneous environments, enabling practical, high-performance training with both NVIDIA and AMD GPUs without changes to existing deep learning applications.
Paper Structure (60 sections, 16 figures, 4 tables)

This paper contains 60 sections, 16 figures, 4 tables.

Figures (16)

  • Figure 1: Communication between GPUs across nodes.
  • Figure 2: Comparison between the previous approach and HetCCL.
  • Figure 3: RDMA-based point-to-point communication between heterogeneous GPUs in different nodes. Each side allocates buffers via its own GPU runtime and uses IB Verbs for communication.
  • Figure 4: Runtime API abstraction layer in HetCCL.
  • Figure 5: Device code compilation mechanism in HetCCL.
  • ...and 11 more figures