张春 发表于 2024-10-2 09:00:13

[Sigcomm论文剖析] Llama 3练习RoCE网络

最近正在开的Sigcomm上, Meta有一篇论文《RDMA over Ethernet for Distributed AI Training at Meta Scale》详细先容了它的物理网络部署和相关的拥塞控制机制. 本文来对它进行一些详细的解读.
TL;DR

0.1 先谈谈学术界和工业界的差距

Sigcomm虽然也号称顶会了, 但是工业界和学术界的差距是非常大的, 即便是工业界用网络的客户和装备网络研发的技术差距也是非常巨大的, 比方长期针对网络协议和网络芯片架构进行协同设计的架构师和网络运维相关的工程师的差距, 比方渣这种在思科搞过最核心的转发芯片相关工作的来看, 真正顶级的工作拿来发论文? 你搞笑么? 有些东西连专利都不会写的.
举个不太涉密的例子吧, Google本年Sigcomm的《A Decentralized SDN Architecture for the WAN》. 实际上这些工作还远没达到我2018年做的Nimble Network和后面Ruta Disaggregation Routing System的水平, 周末有空我来对这个事变做个详细解读.
所以许多时候看这些顶会的论文也要辩证的看, 究竟Meta这群人也就是有什么用什么的本领, 真要去做芯片和协议的协同设计的本领还差的太远, 开头做个总结吧
0.2 渣的评价

好的方面: 这些针对可靠性/宕机迁移/降低爆炸域的设计, 针对用户可编排性的对称拓扑设计都是值得我们学习的

[*] 规复到尺度的Spine-Leaf对称拓扑, 接入TOR交换机到网卡这一段就不需要采用光模块直接采用铜的DAC, 省了不少本钱, 比方单个400G光模块大概$1000美金. 同时铜缆也提高了稳定性.
[*] 爆炸域缩小, 如果某个GPU故障, 大概TOR交换机故障, 仅需要很快的迁移到另一个机柜上就行了, 爆炸域16卡, 单个Pod有3072卡, 而Llama 3 405B练习规模为16384卡, 从并行策略看正好每个Pod 2048卡, 因此每个Pod其实可以分为2048+ 1024, 剩下的1024卡还可以跑一些别的业务, 比方论文中写的一些256卡左右的推荐系统使命. 当故障发生时, 很快的杀掉小的使命来替换保证2048卡的练习即可.
[*] 而多轨道的部署, 如果TOR故障大概某个GPU服务器故障将会影响到千卡规模.
[*] 多轨道的非对等连接, 有些大厂采用在TOR上做DP, 更上层交换机做PP的方式. 在CP并行引入后,事实上这样的拓扑会带来更多的问题. 同时MoE的Bisection带宽也无法保证.
[*] Spine采用了框式交换机, 更深的buffer可以吸网络合通信的burst, 同时基于VOQ的Linecard+Fabric方式扩大了交换机的Radix, 可以支持最大576个400G端口互联. 而交换机模块化的设计, 留了64个口用于端口故障时的更换, Fabric也有冗余.
[*] Spine整个交换机故障也无所谓,整个集群的的Spine交换机按照1:1.125荣誉, down两台都没关系.
[*] 聚集通信可以在有收敛比的网络中很好的运行.
[*] 通过在NCCL上实现了一个类似于Window Based拥塞控制机制.
待美满的:
https://i-blog.csdnimg.cn/blog_migrate/2adbd6753f9753c1e407037854acac11.png

[*] 多路径的问题转移到了框式交换机上, 网络本钱上升了30%
[*] 静态耽误高达22us, alltoall的通信问题实际上是没有解决的, 特别是小消息size的情况下还需要Rail-Based AlltoAll来提升消息size
[*] 我们还是需要更细致的从根源上去解决RoCE的多路径的问题, 但是Meta当前是没有解决的.
[*] 单口400G,单上连带来的可靠性问题, Meta需要考虑双上联提高稳定性的情况下, 增长两个Hash冲突点如何制止冲突
[*] 不需要DCQCN本质上是在转移矛盾, 把本来该在网卡Buffer上解决的问题转移到CTSW交换机上.
[*] 整个工作充满了各种Hack和各种噜苏的配置, 并不能很好的做到开箱即用.
[*] FlowLet相关的工作还在探索.
[*] 故障收敛速率的问题没有提及, 只是在RTSW到CTSW上增长了12.5%的链路做冗余.
本质上对meta这篇论文的评价是负面的, 由于他们还没有触及核心. 所以还是继承提出一个已经解决的问题, 给所有的厂商一个很简朴的考题:
采用Spine-Leaf拓扑, 不用任何框式交换机, 不需要DeepBuffer. 如何不利用交换机任何Hash函数信息, 不需要交换机任何特殊配置, 不启用ECN和PFC. 通过网卡算法自动打散流量,并维持交换网97.5%以上的利用率, 对于交换机的buffer需求为队列深度低于3us. 并能够针对128:1的时候incast时最大流和最小流量之间的带宽差别小于100Kbps, 同时针对任何网络线缆故障, 通信停止无感知, 模型练习收敛时间小于100ms.
以下是对Meta这篇Sigcomm论文的详细解读.
所有资料 ⚡️ ,朋侪们如果有需要全套 《LLM大模型入门+进阶学习资源包》,扫码获取~
   
页: [1]
查看完整版本: [Sigcomm论文剖析] Llama 3练习RoCE网络