Holmes: Towards Distributed Training Across Clusters with Heterogeneous NIC Environment
作者: Fei Yang, Shuang Peng, Ning Sun, Fangyu Wang, Yuanyuan Wang, Fu Wu, Jiezhong Qiu, Aimin Pan
分类: cs.CL, cs.DC
发布日期: 2023-12-06 (更新: 2024-04-29)
备注: 12 pages
💡 一句话要点
Holmes:面向异构网卡集群的分布式LLM训练框架
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 大型语言模型 分布式训练 异构计算 网络接口卡 模型并行
📋 核心要点
- 现有LLM训练框架主要针对同构RDMA集群优化,无法有效利用异构网卡环境下的计算资源。
- Holmes框架提出了一种新颖的调度方法,根据网卡特性将计算任务智能分配给不同的GPU设备组。
- 实验表明,Holmes在异构网卡环境下性能接近同构RDMA网络,显著优于纯以太网环境,并超越其他主流框架。
📝 摘要(中文)
大型语言模型(LLMs)如GPT-3、OPT和LLaMA在各种任务中表现出卓越的准确性。然而,训练这些模型成本高昂,通常需要数万个GPU持续运行数月。通常,这种训练在配备同构高速远程直接内存访问(RDMA)网络接口卡(NIC)的专用GPU集群中进行。获取和维护此类专用集群具有挑战性。现有的LLM训练框架,如Megatron-LM和Megatron-DeepSpeed,主要侧重于优化同构集群环境中的训练。本文介绍Holmes,一个LLM训练框架,它在异构NIC环境中使用精心设计的数据和模型并行策略。我们的主要技术贡献在于一种新颖的调度方法,该方法基于连接NIC的特性,智能地将LLM训练中不同的计算任务分配给特定的GPU设备组。此外,我们提出的框架利用流水线并行技术,展示了对多个GPU集群的可扩展性,即使在不同集群中的节点之间没有高速互连的情况下也是如此。我们进行了全面的实验,涉及异构NIC环境中的各种场景。在大多数情况下,我们的框架实现了接近同构RDMA网络(InfiniBand或RoCE)的性能水平,大大超过了纯以太网环境中的训练效率。此外,我们验证了我们的框架在异构NIC环境下优于其他主流LLM框架的训练效率,并且可以与它们无缝集成。
🔬 方法详解
问题定义:论文旨在解决在具有异构网络接口卡(NIC)的集群上高效训练大型语言模型(LLMs)的问题。现有方法,如Megatron-LM和Megatron-DeepSpeed,主要针对同构RDMA环境进行了优化,无法充分利用异构NIC环境下的资源,导致训练效率低下。
核心思路:Holmes的核心思路是根据不同NIC的性能特点,智能地将LLM训练中的计算任务分配给不同的GPU设备组。通过这种方式,可以最大限度地利用高速NIC,减少低速NIC带来的瓶颈,从而提高整体训练效率。
技术框架:Holmes框架采用数据并行和模型并行相结合的策略,并引入了流水线并行技术以支持跨多个GPU集群的扩展。该框架包含一个新颖的调度器,负责根据NIC的性能指标(如带宽、延迟)将计算任务分配给不同的GPU组。此外,该框架还支持与现有LLM训练框架的无缝集成。
关键创新:Holmes的关键创新在于其智能调度方法,该方法能够根据异构NIC环境的特点,动态地调整计算任务的分配策略。这种方法与传统的静态分配策略不同,能够更好地适应异构环境的变化,从而提高训练效率。
关键设计:Holmes的调度器使用了一种基于性能模型的任务分配算法。该算法考虑了不同NIC的带宽和延迟,以及不同计算任务的计算量和通信量,从而确定最佳的任务分配方案。此外,Holmes还采用了一种自适应的流水线并行策略,能够根据集群的规模和网络拓扑动态地调整流水线的深度和宽度。
📊 实验亮点
实验结果表明,在异构NIC环境下,Holmes框架的性能接近同构RDMA网络,显著优于纯以太网环境。具体来说,Holmes在某些情况下能够达到与InfiniBand或RoCE网络相当的训练效率,并且比其他主流LLM框架(如Megatron-LM)在异构环境下的训练效率更高。此外,实验还验证了Holmes框架在多个GPU集群上的可扩展性。
🎯 应用场景
Holmes框架可应用于各种需要大规模LLM训练的场景,尤其是在资源受限或需要利用现有异构计算集群的情况下。该框架可以降低LLM训练的成本,加速LLM的开发和部署,并促进LLM在各个领域的应用,例如自然语言处理、机器翻译、文本生成等。
📄 摘要(原文)
Large language models (LLMs) such as GPT-3, OPT, and LLaMA have demonstrated remarkable accuracy in a wide range of tasks. However, training these models can incur significant expenses, often requiring tens of thousands of GPUs for months of continuous operation. Typically, this training is carried out in specialized GPU clusters equipped with homogeneous high-speed Remote Direct Memory Access (RDMA) network interface cards (NICs). The acquisition and maintenance of such dedicated clusters is challenging. Current LLM training frameworks, like Megatron-LM and Megatron-DeepSpeed, focus primarily on optimizing training within homogeneous cluster settings. In this paper, we introduce Holmes, a training framework for LLMs that employs thoughtfully crafted data and model parallelism strategies over the heterogeneous NIC environment. Our primary technical contribution lies in a novel scheduling method that intelligently allocates distinct computational tasklets in LLM training to specific groups of GPU devices based on the characteristics of their connected NICs. Furthermore, our proposed framework, utilizing pipeline parallel techniques, demonstrates scalability to multiple GPU clusters, even in scenarios without high-speed interconnects between nodes in distinct clusters. We conducted comprehensive experiments that involved various scenarios in the heterogeneous NIC environment. In most cases, our framework achieves performance levels close to those achievable with homogeneous RDMA-capable networks (InfiniBand or RoCE), significantly exceeding training efficiency within the pure Ethernet environment. Additionally, we verified that our framework outperforms other mainstream LLM frameworks under heterogeneous NIC environment in terms of training efficiency and can be seamlessly integrated with them.