HyperAI超神经
Back to Headlines

NCCL 2.27:加速 GPU 通信,提升大规模推理和训练效率

2 days ago

随着AI工作负载的规模扩大,快速且可靠的GPU通信变得至关重要,不仅在训练中,在大规模推理中也不例外。NVIDIA集体通信库(NCCL)提供了高性能、拓扑感知的集体操作,包括AllReduce、广播、Reduce、AllGather和ReduceScatter,优化了与NVIDIA GPU和多种互连技术(如PCIe、NVLink、以太网(RoCE)和InfiniBand(IB))的兼容性。 NCCL 2.27 的最新功能 最新的NCCL 2.27版本带来了多个关键更新,旨在提升跨GPU的集体通信性能,解决了低延迟、带宽效率和扩展性的挑战。这些改进支持了现代AI基础设施的两大需求:超低延迟对于实时推理管道非常重要,而强大的容错能力则确保了大规模部署的可靠性。 低延迟内核和对称内存 对称内存支持:这一版本引入了对称内存支持,允许具有相同虚拟地址的缓冲区执行优化的集体操作。这显著降低了所有消息大小的延迟,特别是小消息大小的延迟减少了高达7.6倍。对称内存适用于单个NVLink域内的通信,最多可以支持NVIDIA GB200和GB300系统中的72个GPU,或DGX和HGX系统中的8个GPU。 优化计算精度:减少操作使用FP32累加器(或在NVLink Switch系统上使用FP16),提高了AllReduce、AllGather和ReduceScatter操作的准确性。 直接NIC支持 NCCL 2.27支持直接NIC配置,可以在GPU规模扩展通信中充分利用全网络带宽。在某些NVIDIA Grace Blackwell平台上,CX8 NICs和Blackwell GPU支持PCIe Gen6 x16,提供高达800 Gb/s的网络带宽。然而,Grace CPU目前仅支持PCIe Gen5,限制了带宽到400 Gb/s。 解决这一问题,CX8 NIC暴露出两个虚拟PCIe树:一个树上的CX8 NIC数据直联功能(PF)直接通过PCIe Gen6 x16链路连接到GPU PF,绕过CPU,避免了带宽瓶颈;另一个树上的常规NIC PF连接到CPU根端口。这样可以确保GPUDirect RDMA及其相关技术达到800 Gb/s的全带宽速度,特别适用于多GPU共享单个CPU的高吞吐量推理和训练工作负载。 NVLink和InfiniBand SHARP支持 NCCL 2.27还增加了对SHARP(可扩展层次聚合和约简协议)的支持,适用于NVLink和InfiniBand织网。SHARP可以在网络中进行数据聚合操作,减轻计算密集型任务的负担。这一版本为AllGather和ReduceScatter集体操作带来了SHARP支持,从GPU到网络时可以使用NVLink Sharp加上IB Sharp。传统环基实现可能消耗16个以上的流处理器(SM),而使用NVLink和IB SHARP后,这一需求降低至6个SM或更少,释放更多资源用于模型计算,提高整体训练效率。这对于大型语言模型(LLM)训练尤为重要,改进了计算与通信的重叠,提高了扩展性和性能,特别是在1,000个GPU及更高水平的部署中。 提升大型训练的韧性 NCCL 2.27引入了Communicator Shrink特性,旨在使分布式训练更加稳固、灵活和高效。数百甚至数千个GPU上的训练任务容易受到设备故障的影响。Communicator Shrink允许在训练过程中动态排除故障或不必要的GPU。此功能支持两种操作模式: 计划重新配置:在正常操作期间排除某个节点。 错误恢复:在设备故障后排除某个节点。 针对开发者的更多功能 除了上述重要功能外,NCCL 2.27还为开发者引入了一些额外的功能: 对称内存API:对称内存是NCCL 2.27的一个基础能力,支持高性能、低延迟的集体操作。当内存缓冲区在所有节点上分配相同的虚拟地址时,NCCL能够执行优化内核,减少同步开销并提高带宽效率。新的窗口API允许集体注册对称内存,进一步增强这一功能。 增强的剖析工具:NCCL 2.27改进了其剖析基础设施,为开发者和工具提供了更准确和高效的诊断方法: 代理事件的和谐化:移除重复的ProxyOp状态,引入统一的ProxyOp正在进行状态,减少剖析器开销。 GPU内核事件精度改进:支持原生GPU时间戳传播,使用内部全局计时器记录开始和结束时间,提高了时间戳的准确性。 网络插件事件更新:支持recordEventState记录网络定义的事件,有助于实时反馈网络条件。 行业评价和公司背景 业内人士普遍认为,NCCL 2.27的这些新功能不仅显著提升了性能,还大幅增强了系统的可靠性和开发者的可观察性。NVIDIA作为全球领先的GPU制造商和AI解决方案提供商,一直在推动AI技术的发展。这次发布再次展示了NVIDIA在高性能计算领域的技术实力和创新能力。对于希望实现超大规模AI部署的开发团队来说,NCCL 2.27无疑是一个重要的里程碑。 开发者可以通过访问NVIDIA/nccl GitHub仓库了解更多详细信息和获取支持。该版本文档齐全,提供了丰富的配置指南,帮助用户充分利用NCCL 2.27的新功能。

Related Links