观点:死磕 AI 大模型网络,鹅厂出招了!

来源:ZAKER科技 时间:2023-06-26 20:35:07

2023 年,以 ChatGPT 为代表的 AIGC 大模型全面崛起,成为了整个社会关注的焦点。

大模型表现出了强悍的自然语言理解能力,刷新了人们对 AI 的认知,也掀起了新一轮的 " 算力军备竞赛 "。


(资料图片仅供参考)

大家都知道,AIGC 大模型的入局门槛是很高的。玩 AI 的三大必备要素——算力、算法和数据,每一个都意味着巨大的投入。

以算力为例。ChatGPT 的技术底座,是基于微调后的 GPT3.5 大模型,参数量多达 1750 亿个。为了完成这个大模型的训练,微软专门建设了一个 AI 超算系统,投入了 1 万个 V100 GPU,总算力消耗约 3640 PF-days(即假如每秒计算一千万亿次,需要计算 3640 天)。

业内头部厂商近期推出的大模型,参数量规模更是达到万亿级别,需要的 GPU 更多,消耗的算力更大。

这些数量庞大的 GPU,一定需要通过算力集群的方式,协同完成计算任务。这就意味着,需要一张超高性能、超强可靠的网络,才能把海量 GPU 联接起来,形成超级计算集群。

那么,问题来了,这张网络,到底该如何搭建呢?

高性能网络的挑战

想要建设一张承载 AIGC 大模型的网络,需要考虑的因素非常多。

首先,是网络规模。

刚才我们也提到,AI 训练都是 10000 个 GPU 起步,也有的达到十万级。从架构上,目标网络就必须 hold 得住这么多的计算节点。而且,在节点增加的同时,集群算力尽量线性提升,不能引入过高的通信开销,损失算力。

其次,是网络带宽。

超高性能的 GPU,加上千亿、万亿参数的训练规模,使得计算节点之间的通信量,达到了百 GB 量级。再加上各种并行模式、加速框架的引入,节点之间的通道带宽需求会更高。

传统数据中心通用的 100Gbps 带宽接入,根本满足不了这个需求。我们的目标网络,接入带宽必须升级到 800Gbps、1.6Tbps,甚至更高。

第三,流量调控。

传统的网络架构,在应对 AI 大模型训练产生的数据流时,存在缺陷。所以,目标网络需要在架构上做文章,更好地控制数据流路径,让节点和通道的流量更均衡,避免发生拥塞。

第四,协议升级。

网络协议是网络工作的行为准则。它的好坏,直接决定了网络的性能、效率和延迟。

传统数据中心的 TCP/IP 协议,早已已无法满足高性能网络的大带宽、低时延需求。性能更强的 IB(InfiniBand)协议、RDMA 协议,已然成为主流。有实力的厂家,还会基于自家硬件设备,自研更高效的协议。

第五,运维简化。

这就不用多说了。超大规模的网络,如果还是采用传统运维,不仅效率跟不上,还会导致更长的故障恢复周期,损失算力,损失资金。

目前,行业里的 " 大模头 " 们,都会根据自己技术和资金实力,选择商用网络组网,或者自研网络协议。

大家心里很清楚,想要赢得这场比赛,除了算力芯片足够强之外,网络的性能表现是至关重要的。网络越强,集群的算力提升就越大,完成模型训练的时间就越短,成本也就越低。

星脉网络,鹅厂的算力集群杀手锏

对于 AI 大模型这场热潮,腾讯当然不会缺席。他们推出了业界领先的高性能计算网络架构——星脉

腾讯深耕互联网行业 20 多年,从 QQ 到微信,他们的超大规模业务承载能力,可以说是行业顶尖的。在网络技术的理解和驾驭能力上,也是世界领先水平。而星脉,则是他们多年技术研究的精髓,是真正的杀手锏。

根据实测,星脉实现了 AI 大模型通信性能的 10 倍提升、GPU 利用率提升 40%、通信时延降低 40%。

基于全自研的网络硬件平台,星脉可以实现网络建设成本降低 30%,模型训练成本节省 30%~60%。

星脉网络的算力效率,远高于业界主流值

接下来,我们不妨深入解读一下,星脉到底采用了哪些黑科技。在前面所提到的几项挑战上,腾讯团队又是如何应对的。

网络规模

在组网架构上,星脉网络采用无阻塞胖树(Fat-Tree)拓扑,分为 Block-Pod-Cluster 三级。

星脉网络的架构

Block 是最小单元,包括 256 个 GPU。

Pod 是典型集群规模,包括 16~64 个 Block,也就是 4096~16384 个 GPU。

多个 Block 可以组成 Cluster。1 个 Cluster 最大支持 16 个 Pod,也就是 65536~262144 个 GPU。

26 万个 GPU,这个规模完全能够满足目前的训练需求。

网络带宽

腾讯星脉网络为每个计算节点提供了 3.2T 的超高通信带宽。

单个服务器(带有 8 个 GPU)就是一个计算节点。每个服务器有 8 块 RoCE 网卡。每块网卡的接口速率是 400Gbps。

RoCE,是 RDMA over Converged Ethernet(基于聚合以太网的 RDMA)。RDMA(远程直接 GPU 通信访问)我们以前介绍过很多次。它允许计算节点之间直接通过内存进行数据传输,无需操作系统内核和 CPU 的参与,能够大幅减小 CPU 负荷,降低延迟,提高吞吐量。

大带宽带来的优势是非常显著的。对于 AllReduce 和 All-to-All 这两种典型通信模式,在不同集群规模下,1.6Tbps 超带宽都会带来 10 倍以上的通信性能提升(相比 100Gbps 带宽)。

以 AllReduce 模式、64 GPU 规模为例,采用 1.6Tbps 超带宽网络,将使得 AllReduce 的耗时大幅缩短 14 倍,通信占比从 35% 减少到 3.7%,最终使得单次迭代的训练耗时减少 32%。从集群算力的角度来看,相当于用同样的计算资源,系统算力却提升 48%。

流量调控

为了提升集群的通信效率,星脉网络对通信流量路径进行了优化,引入了" 多轨道流量聚合架构 "

该架构将不同服务器上位于相同位置的网卡,都归属于同一个 ToR switch(机柜顶部的汇聚交换机)。整个计算网络平面,从物理上被划分为 8 个独立并行的轨道平面。

在工作时,GPU 之间的数据,可以用多个轨道并行传输加速。并且,大部分流量,都聚合在轨道平面内传输(只经过一级 ToR switch)。只有小部分流量,会跨轨道平面传输(需要经过二级 switch)。这大幅减轻了网络压力。

星脉网络还采用了" 异构网络自适应通信技术 "

在集群中,GPU 之间的通信包括机间网络(网卡 + 交换机)与机内网络( NVLink/NVSwitch 网络、PCIe 总线网络)。

星脉网络将机间、机内两种网络同时利用起来,实现了异构网络之间的联合通信优化。

例如,在 All-to-All 通信模式时,每个 GPU 都会和其它服务器的不同 GPU 通信。

基于异构网络自适应通信技术,不同服务器上相同位置的 GPU,在同一轨道平面,仍然走机间网络通信。

但是,要去往不同位置的 GPU(比如 host1 上的 GPU1,需要向其它 host 上的 GPU8 送数据),则先通过机内网络,转发到 host1 上的 GPU8 上,然后通过机间网络,来完成通信。

这样一来,机间网络的流量,大部分都聚合在轨道内传输(只经过一级 ToR switch)。机间网络的流量大幅减少,冲击概率也明显下降,从而提供了整网性能。

根据实测,异构网络通信在大规模 All-to-All 场景下,对中小数据包的传输性能提升在 30% 左右。

协议升级

星脉网络采用的" 自研端网协同协议 TiTa",可以提供更高的网络通信性能,非常适合大规模参数模型训练。

TiTa 协议内嵌拥塞控制算法,可以实时监控网络状态并进行通信优化。它就好比是一个智能交通管理系统,可以让网络上的数据传输更加通畅。

TiTa 协议的处理方式

面对定制设计的高性能组网架构,业界开源的 GPU 集合通信库(例如 NCCL)并不能将网络的通信性能发挥到极致。为此,腾讯推出了 "高性能集合通信库 TCCL(Tencent Collective Communication Library)"。

TCCL 就像一个智能导航系统。它在网卡设备管理、全局网络路由、拓扑感知亲和性调度、网络故障自动告警等方面进行了深度定制,对网络了如指掌,让流量路径更加合理。

例如,从 GPU A 到 GPU B,原来需要经过 9 个路口。有了 TCCL 导航之后,只需要走 4 个路口,提升了效率。

根据实测,在 AllReduce/AllGather/ReduceScatter 等常用通信模式下,TCCL 能给星脉网络带来 40% 左右的通信性能提升。

部署和运维简化

算力集群网络越庞大,它的部署和维护难度也就越大。

为了提升星脉网络的可靠性,腾讯自研了一套全栈网络运营系统,实现了" 端网部署一体化 "" 一键故障定位 "" 业务无感秒级网络自愈 ",对网络进行全方位保驾护航。

先看看" 端网部署一体化 "

部署一直都是高性能网络的痛点。在星脉网络之前,根据统计,90% 的高性能网络故障问题,是因为配置错误导致。原因很简单,网卡的配置套餐太多(取决于架构版本、业务类型和网卡类型),人为操作很难保证不出错。

腾讯的解决方法,是将配置过程自动化。

他们通过 API 的方式,实现单台 / 多台交换机的并行部署能力。

在正式部署前,系统会自动对基础网络环境进行校验,看看上级交换机的配置是否合理等。

然后,识别外部因素,自动选择配置模板。

配置完成后,为了保证交付质量,运营平台还会进行自动化验收,包括一系列的性能和可靠性测试。

所有工作完成后,系统才会进入交付状态。

根据数据统计,基于端网一体部署能力,大模型训练系统的整体部署时间从 19 天缩减到 4.5 天,并保证了基础配置 100% 准确。

再看看运维阶段的" 一键故障定位 "

星脉网络具有端网高度协同的特点,增加了端侧的运营能力。运营平台通过数据采集模块,获取端侧服务器和网络侧交换机的数据,联动网管拓扑信息,可以做到快速诊断与自动化检查。

一键故障定位,可以快速定界问题方向,精准推送到对应团队的运营人员(网络 or 业务),减少沟通成本,划分责任界限。而且,它还有利于快速定位问题根因,并给出解决方案。

最后,是" 业务无感秒级网络自愈 "

在网络运行的过程中,故障是无法避免的。

为了将故障自愈时间缩短到极致,腾讯推出了秒级故障自愈产品—— "HASH DODGING"。

这是一种基于 Hash 偏移算法的网络相对路径控制方法。即,终端仅需修改数据包头特定字段(如 IP 头 TOS 字段)的值,即可使得修改后的包传输路径与修改前路径无公共节点。

在网络数据平面发生故障(如静默丢包、路由黑洞)时,该方案可以帮助 TCP 快速绕过故障点,不会产生对标准拓扑及特定源端口号的依赖。

单路径传输协议下,使用本方案,实现确定性换路

结语

以上,就是对腾讯星脉高性能计算网络的关键技术分析。

这些关键技术,揭示了高性能网络的发展思路和演进方向。随着 AI 大模型的深入发展,人类对 AI 算力的需求会不断增加。

日前,腾讯云发布的新一代 HCC 高性能计算集群,正是基于星脉高性能网络打造,算力性能较前代提升 3 倍,为 AI 大模型训练构筑可靠的高性能网络底座。

未来已来,这场围绕算力和连接力的角逐已经开始。更多的精彩还在后面,让我们拭目以待吧!

X 关闭

Copyright ©  2015-2023 京津冀净水网版权所有  备案号:京ICP备2022022245号-12   联系邮箱:434 922 62 @qq.com