【转载】分布式训练和集合通信

本文介绍了分布式深度学习中的集合通信,包括Broadcast、Scatter、Reduce、All reduce、Gather等操作,并探讨了Open MPI、NCCL、Gloo等通信库的特点与性能,强调了All reduce在梯度同步中的关键作用。在GPU环境下,NCCL通常提供最佳性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转载自 OneFlow 大佬:【深度学习】— 分布式训练常用技术简介


分布式框架采用的常见底层支撑库,可以归类为以下三类:

  • 集合通信库:用于分布式训练时,多个计算设备之间的集合通信,常见的有 Open MPI、NCCL、Gloo等.
  • 数据加载与预处理库:分布式训练需要处理海量数据,这使得单机单卡时代不需要考虑的数据加载问题,在分布式时代很容易成为瓶颈,为此,通常需要对分布式训练中的数据即预处理做相关优化。如:现在市面上比较流行的Nvidia提供的DALI库。
  • 分布式通信调度库:虽然分布式深度学习框架的通信大都采用的是以上提及的NCCL、Open MPI一类的通信库,但是因为深度学习框架设计的历史包袱以及实现质量的参差不齐,各框架原生的通信接口的效果并不稳定,也不易上手。在实际应用中,反而是第三方的Horovod成为了各框架的“标配第三方库”。Horovod 对底层通信库(MPI、NCCL、Gloo等)进行了封装&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

理想不闪火

你的鼓励将是我最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值