学习心得

学习心得:从 NCCL 看集合通信的设计思路

NCCL 是分布式训练的通信基石。这篇笔记从集合通信原语与算法选择出发,整理通信优化的学习思路。

为什么要理解 NCCL

NCCL 是分布式训练的通信基石,理解它有助于排查训练中的通信瓶颈。

集合通信原语

AllReduce、AllGather、ReduceScatter 是常用原语,分别对应不同的数据同步需求。理解它们的语义是分析通信开销的前提。

算法与拓扑

NCCL 会根据通信规模与物理拓扑在 Ring、Tree 等算法间选择,并优先利用 NVLink 等高速链路。观察算法选择有助于定位性能问题。

学习建议

调优参数很多,建议结合具体场景逐一验证,理解每个参数影响的是哪一段通信过程。