NCCL 与集合通信算法
all-reduce 的 Ring 算法通信量为 ,与 GPU 数无关但延迟随 线性增长;Tree 算法延迟为对数级。本章给出 all-reduce、all-gather、reduce-scatter、all-to-all 的代价模型与 NCCL 的算法选择逻辑。
- 大消息看带宽项,小消息看延迟项
- NCCL 环境变量对性能影响巨大且难以调试
- all-to-all(MoE)对网络的要求与 all-reduce 完全不同
all-reduce 的 Ring 算法通信量为 ,与 GPU 数无关但延迟随 线性增长;Tree 算法延迟为对数级。本章给出 all-reduce、all-gather、reduce-scatter、all-to-all 的代价模型与 NCCL 的算法选择逻辑。