RDMA集合通信-通信原语 集合通信(Collective Communications)是一个进程组的所有进程都参与的全局通信操作,其最为基础的操作有 发送send、接收receive、复制copy、组内进程栅障同步Barrier以及节点间进程同步(signal +wait ),这几个最基本的操作经过组合构成了一组通信模板也叫通信原语,比如:1对多的广播broadcast、多对1...
1 集合通信 集合通信(Collective Communications)是一个进程组的所有进程都参与的全局通信操作,其最为基础的操作有发送 send、接收 receive、复制 copy、组内进程栅障同步 Barrier 以及节点 间进程同步(signal +wait ),这几个最基本的操作经过组合构成了一组通信模板也叫通信原语/ 通信模式,比如:1 对多的广播 broad...
在典型的智算集群中,GPU服务器通过NVIDIA NCCL(Collective Communication Library)等集合通信库实现跨节点数据同步,同时结合RDMA(如RoCE)网络技术降低传输延迟。 然而,随着集群规模扩大和网络拓扑复杂化,通信链路拥塞、路径选择不当等问题频发,导致训练性能波动甚至中断。更棘手的是,集合通信库(如NCCL、HCCL)的运行细节用户...
通信操作执行阶段HCCL会根据通信算法编排NOTIFY/SDMA等任务,并通过runtime下发给昇腾设备任务调度器,设备根据编排信息调度并执行任务。其中Notify类的任务用于卡间同步,Notify wait会阻塞任务流执行直到对应的Notify record到达,以确保后续的通信操作执行时彼此的内存处于ready状态。 分布式训练场景下集合通信异常流程如图3所示。
HCCL(Huawei Collective Communication Library)是基于昇腾AI处理器的高性能集合通信库,提供单机多卡以及多机多卡间的集合通信能力,支持大模型的数据并行、模型并行、专家并行、pipeline并行、序列并行等多种加速方案。更详细的介绍,可参考以下博文: HCCL——昇腾高性能集合通信库 ...
集合通信(Collective Communications)是一个进程组的所有进程都参与的全局通信操作,其最为基础的操作有 发送send、接收receive、复制copy、组内进程栅障同步Barrier以及节点间进程同步(signal +wait ),这几个最基本的操作经过组合构成了一组通信模板也叫通信原语,比如:1对多的广播broadcast、多对1的收集gather、多对多...
集合通信算法集合通信算子实现,支持算法包括:ring、HD、NHR、NB和pipeline。 Ring算法: 所有的芯片以环形相连,每张卡都有左手卡和右手卡,一个负责接收,一个负责发送,循环完成数据的收发。一次Ring算法会占用如下的实线环或者虚线环,如下ring环中实际有两个环(因为hccs和pcie都是全双工的)。 Ring算法优缺点是:在中等...
HCCL(Huawei Collective Communication Library)是基于昇腾AI处理器的高性能集合通信库,提供单机多卡以及多机多卡间的集合通信能力,支持大模型的数据并行、模型并行、专家并行、pipeline并行、序列并行等多种加速方案。 HCCL支持AllReduce、Broadcast、Allgather、ReduceScatter、AlltoAll等通信原语,支持Ring、Mesh、Halving-Doubli...
在典型的智算集群中,GPU服务器通过NVIDIA NCCL(Collective Communication Library)等集合通信库实现跨节点数据同步,同时结合RDMA(如RoCE)网络技术降低传输延迟。然而,随着集群规模扩大和网络拓扑复杂化,通信链路拥塞、路径选择不当等问题频发,导致训练性能波动甚至中断。更棘手的是,集合通信库(如NCCL、HCCL)的运行...