阿里云HPN新一代万卡集群网络架构分析

薪科技快评 2024-07-24 08:27:19

HPN 7.0:阿里云新一代万卡集群网络架构

一、背景

之前的文章中我们中我们具体介绍过万卡 GPU 集群中的网络拓扑相关信息以及在万卡 GPU 集群中进行大规模 LLM 训练面对的挑战和相应解决方案,也进一步介绍了阿里云的集合通信调度框架 C4。本文中,我们简单介绍 C4 底层的阿里云新一代智算集群网络架构 HPN 7.0。阿里在最近的智源大会上提到了几个关键词:双上联,双平面,多轨,以及单层千卡,两层万卡。

上面提到的几个介绍可以参考:

万卡 GPU 集群互联:硬件配置和网络设计万卡 GPU 集群实战:探索 LLM 预训练的挑战阿里 C4:通信驱动加速大规模并行训练效率剖析大规模 GPU 集群:针对 LLM 场景的挑战和优化二、拓扑

如图所示(星融元LLM大模型承载网解决方案),我们采用常见的三层无阻塞 Fat-Tree 拓扑结构——SuperSpine-Spine-Leaf。这种结构将两层的 Spine-Leaf 视为一个 Pod,而一层的 Leaf 则被视为一个 Group。每个 Pod 包含8个 Group(HB)。

Leaf Switch 配备了128个400 Gbps的端口,总交换带宽高达51.2Tbps。每台设备内置8块H100/H800 GPU,每个GPU都对应一个400 Gbps的网络接口卡。通过全网格连接,一个Group中最多可接入8个Leaf Switch。每个Leaf Switch拥有64个下行400Gbps端口,可连接64台设备。因此,每个Group最多只能容纳512个GPU(计算方式:64*8=512)。

阿里云HPN-7.0的拓扑结构,如"Revolutionizing Data Center Networks: Alibaba’s SONiC Journey"的图片所示。图中揭示了一个有趣的事实:尽管每个Pod仍然包含8个Segment(组),但每个Group现在拥有128个配备8个GPU的节点,而非以往的64个。这种优化无疑提升了整体性能和效率,体现了阿里云在数据中心网络革新方面的持续努力。

Leaf Switch 拥有惊人的64个400Gbps上行端口和128个200Gbps下行端口,其总交换带宽高达51.2Tbps。每台机器配备了16个200Gbps NIC端口,通过全网格连接,可以无缝对接16个Leaf Switch。每个Leaf Switch拥有128个下行200Gbps端口,可连接128台设备。这意味着一个群组能够支持高达1024个GPU(单层千卡)。对于下图的拓扑中:每个Pod拥有8个分组(Segment),即8192个GPU(两层万卡)。这为高性能计算带来了巨大的潜力。

从上述的拓扑图可清晰看出,一个 Group 内的 GPU 间的通信只需经过一次传递(仅需通过 1 个 Leaf Switch)。相较于传统架构,HPN-7.0 在 1 个 Group 内实现了最多 1024 GPU 互联,总通信带宽提升至 1024*2*200Gbps=409.6Tbps,相较之前的传统架构(512 GPU 互联,204.8Tbps)实现了翻倍增长。这意味着,HPN-7.0 不仅提高了互联能力,还为大规模 GPU 集群带来了更高效的通信体验。

三、双上联

借助双200Gbps端口和双200Gbps NIC,我们在一个Group中实现了GPU数量和通信带宽的倍增。这一设计不仅提升了性能,更重要的是,它能有效缓解因网卡、交换机、光模块、光纤等硬件问题引发的异常,避免中断训练进度,从而大大节省计算资源。在当前大规模AI模型训练中,同步方式已成为主流,而我们的设计恰好满足了这一需求。

双上联策略,包含两种方案。这两种方案都能让一个GPU对应两个上行链路,且这两个链路分别连接到不同的交换机上。具体来说,128台机器的Port-00可以连接至Leaf Switch-00,而Port-15则可以连接至Leaf Switch-15。

拥有1块400Gbps的网络接口卡,该卡上配置有2个200Gbps的端口。尽管这样的配置在网络接口卡故障时,可能会中断训练任务,但一个网卡的管理便利性和占用插槽数量的优势不容忽视。这种设计灵感源于阿里的研究论文[2406.04594] "Boosting Large-scale Parallel Training Efficiency with C4: A Communication-Driven Approach",旨在通过提升通信效率,推动大规模并行训练的效能。搭载2个200 Gbps NIC,每个NIC配备1个200 Gbps端口:即使一个网卡出现故障,另一个仍可维持正常运作,大幅提升了网络的韧性。然而,这可能会带来额外的管理开销和插槽占用。此设计符合阿里云开发者社区中“灵骏可预期网络”一栏的介绍,专为AI基础设施打造。

在双链路中,一旦上行链路或对应交换机故障,流量将无缝切换至另一端口提供服务(如图绿线)。训练任务不会中断,但可能会轻微影响速度。

四、双平面

双上联策略可提升系统稳定性,但也可能加剧ECMP(等价多径)哈希不均问题。如图所示,蓝色代表发送端,橙色代表接收端,通过控制两条上行路径实现流量均匀传输。然而,Spine的存在使得从Spine到右侧Leaf的流量难以保持均衡。尤其在训练场景中,流量数量较少,但每次数据量较大,进一步加剧了流量极度不均的现象,即哈希极化。

为了解决哈希极化问题,HPN 中在网络拓扑中实现了双平面设计。具体来说,每个 GPU 都对应 2 个 NIC Port,那么就可以将所有 GPU 对应的 NIC Port-0 构建一个网络平面,所有 NIC Port-1 构建一个网络平面,两个网络平面的网络拓扑完全一样,并且没有任何交叉。这样的话,只要发送端保证发送到两个 NIC Port 的流量是均匀的,那么在接收端就会一定接收到均匀的流量,大幅降低哈希极化的概率。

如下图所示,平面 1 和平面 2 是完全镜像的,蓝色 GPU 对应的流量会均匀发送到两个平面,并且到每个平面的流量只会在内部转发,如 1,2,3,4 的路径,最终到达橙色 GPU 对应 NIC 的流量也是均匀的。

更清晰的视角可以参考下图:

五、多轨通信

多轨通信,即通过整合多种通信链路,实现卓越的通信效能。以8*H100 SXM节点为例,其内部NVLink和NVSwitch的全互联设计,可达到惊人的7.2TBps传输速度。而节点间的连接则依赖于高速网络,一个包含128个节点的Group只需一次网络转发即可完成互联。

阿里云展望未来,期望在更广阔的领域(超越8 GPU)内实现卓越的性能连接,类似NVIDIA的最新NVL72和SuperPod 576。这就是图中展示的Scale-Up内部互联(AI Rack)。

六、参考链接阿里巴巴的Sonic项目正在彻底改变数据中心网络。通过使用Sonic,企业可以提升网络性能,降低运营成本。Sonic已在全球范围内部署,为数百万用户提供服务。加入我们的Sonic之旅,一起探索未来的网络可能。https://arxiv.org/abs/2406.04594https://event.baai.ac.cn/live/795

-对此,您有什么看法见解?-

-欢迎在评论区留言探讨和分享。-

0 阅读:1

薪科技快评

简介:薪科技评说,发现技术的点滴,记录科学的飞跃!