NVIDIA AI 新网络助力龙蜥提升网络通信速率 原创
编者按:AI 不仅影响操作系统自身和上层应用生态,它也推动数据中心以及内部网络。在 2023 龙蜥操作系统大会全面拥抱智算时代分论坛上,NVIDIA 网络产品部亚太区高级总监宋庆春分享了 AI 新网络在龙蜥操作系统的支持情况,以及 NVIDIA 网络在 AI 方面最新的一些进展状况和看法。以下为分享原文:
(图/NVIDIA 网络产品部亚太区高级总监宋庆春)
AI 新网络解决的是什么问题?那在新网络中主要解决以下两个问题:第一是在东西向上以性能至上,要将 AI 性能发挥到最佳。第二在南北向要做 offload,因为南北向上有各种操作,通过新网络技术将各种操作 offload 出来放在最合适的地方,让南北向操作都发挥最佳的性能,同时不浪费资源。
未来数据中心的发展趋势
数据中心成为了计算机。随着数据中心的发展,现在国内的算力资源中通用算力占绝大多数,接下来是智算算力、超算算力。在一到两年内智算算力会成为国内算力的主要组成部分,超越通用算力,因为应用场景在发生变化,传统的数据中心不再是发展趋势。未来会向 AI 工厂和生成式 AI 云两个方向进行发展,成为数据中心发展的新趋势。
AI 工厂要构建一个非常庞大的数据中心,在数据中心中跑一个或者少数业务,规模很大,但因为跑的业务很少,所以需要集中成千上万的 CPU、GPU 跑单一业务。因此 AI 工厂要求性能非常高,单一的 CPU、GPU 已经不能解决,网络才是关键。当构建到几十万台服务器时,性能的好坏取决于网络。在 AI 工厂中 NVLink 网络加上 InfiniBand 网络是最佳组合。
生成式 AI 云在如此庞大的市场中需要有很强的算力和云的灵活性,为此 NVIDIA 推出新一代网络。随着大模型的出现,一年内已经掀翻了很多传统模式,在未来这样的趋势会越来越明显。传统的数据中心架构会变得越来越少,未来的数据中心会朝着 AI 工厂和生成式 AI 云方向发展。
未来数据中心的网络架构需要专门面向 AI 的网络。
AI 数据中心中是成千上万的机器在运行业务,如果业务的耦合性很强,每一个CPU、服务器的快慢都会影响到业务的性能。由于是成千上万的机器联合作业,通信效率非常关键,因此需要用 RDMA 技术,它在通信时与 CPU 无关,扩展性不依赖于 CPU,增加新的计算点时不会影响到通信效率。此外对 Jitter、对抖动性容忍度很低,在跑一个业务时,其中某一个点如果低性能会影响到整个业务性能。在构建网络时为了能达到更高性能,要组织一个无抖动的网络。在 AI 业务场景中,通信是 bursty 突发式。
传统的数据中心无法解决 bursty 带来的这些问题,所以在传统的数据中心中运行业务时经常会产生很多拥塞,产生拥塞会带来通信的延迟很长,带宽被大大拉低。
为了解决该问题,NVIDIA 推出 Spectrum-X 业界第一个专门面向 AI 的以太网络,其中专门对 AI 业务做了端到端的优化,从 NCCL 到硬件、再到通信库做了一整套优化。
专门针对 NCCL 做了 RoCE 优化,通信上在 NCCL 和下面的通信库做了一整套优化。在以太网上率先实现了基于 adaptive 动态路由,让网络的通信效率基本上达到了百分之百(如果没有该动态路由,可以从数据中看到通信效率非常低),还增强了拥塞控制技术,在云上在跑多任务时实现多任务应用的性能隔离,很多任务运行在云上时可能之间会互相干扰,导致每个任务都无法达到理想的性能。通过性能隔离可以让每个任务都达到和跑一个业务时相同的性能,所以通过新的 AI 网络让网络的通信效率得以大大提升,其中包括了 Spectrum-4 交换机,DPU 和整个软件 stack,可以通过 docker 的方式来支持各种 OS。目前 docker 已经和龙蜥操作系统 Anolis OS 做完了融合,如果想要使用 Anolis OS ,可以直接通过 docker 镜像,使用 DPU 中的各种功能。
面向新AI数据,网络如何改进
上面介绍了 Spectrum-X,包括了 Spectrum-4 交换机和 BlueField-3 和上方的软件。
接下来介绍端到端 RDMA 的动态路由。上图中假如说有两个 message 需要发送到接收端,每个 message 中四个 packet,当 packet 到了网络上,网络会把 packet 分到所有网络的链路上。当这个 packet 到达了终点,由于传送过程中被分散到了整个网络后,到终点时有可能会出现包乱序,出现乱序后,在终点需要有能力把乱序的数据再重组,当应用看到数据时,是一个有序的数据。在网络可以接受乱序,只要应用看到的是有序的数据就可以,这样就需要 DPU 来做数据的乱序重组。通过这样的乱序重组、动态路由,可以让网络传输效率相比较传统的以太网络提升 1.6 倍。
当网络传输效率提升 1.6 倍后,整个网络的通信效率达到了 95% 以上,接近了 100%,网络拥塞的问题可以相应解决,通信延迟大大降低,通信带宽也大幅提升,实现网络可预测的一个性能。
AI 网络相比较传统的以太网,左图是全球最大的一个云服务公司的业务场景。
在一个最优的选择情况下(最优任务 Placement),即将 AI 任务放在最理想的情况,例如做了各种各样的优化,在分配任务时完全按照优化的布置来分配任务。中间情况 Average placement 指正常把任务分发在云上,管理软件根据可用资源把 AI 任务分发下去。另外最差情况,比如有 100 台交换机,100 台交换机下挂了很多服务器,有一个 AI 任务需要 100 个 GPU,100 个 GPU 正好分配到 100 个交换机下,就是最差的情况。在以上三种不同的情况下,即使最优的情况,都无法达到全部带宽,而且性能每次使用时都不稳定,中间总是有抖动 jitter,无法达到最优的 AI 性能。通过 Spectrum-X 后,不管在哪一种状况下下都可以达到全部的带宽,而且没有 jitter,测试多少次最后看到的系统性能都一样。
为了能让用户容易使用到基于 Spectrum-X 的软件和硬件,NVIDIA 构建了基于 Spectrum-X 的 2000 个 GPU 的一个数据中心。
那 NVIDIA 是如何构建 AI 数据中心的?在构建中心时使用到了数据孪生技术,在构建物理数据中心前已经做了很多工作,构建了一个虚拟的数字数据中心。在数据中心上所有的配置、验证,都是在虚拟的环境中完成的。未来数据中心的趋势是利用数字孪生技术来快速构建数据中心。
DPU 在 AI 网络带来的价值
BlueField-3 在 AI 云上 BlueField 叫做 SuperNIC,主要面向东西向流量。在面向南北向流量,做流量南北向操作时叫 DPU,但是在做东西向性能加速时叫 SuperNIC,在 AI 网络中,主要功能还是 SuperNIC 功能。在动态路由、拥塞控制上 BlueField 不可或缺。在 Multi-Tenant 上也做了进一步性能优化,以及在完善生态系统上做了很多工作。
在 Multi-Tenant 环境中使用 Blue-Field 有什么好处?
BlueField 可以支持传统的基于 controller 多租户的平台,与传统网络相同。在 BlueField 上有一个功能,看上图左边中没有控制器 controller,所有的工作、租户之间的控制都由 BlueField 去做,只要增加了新的服务器,就可以横向扩展规模,服务器中的 BlueField 就可以加入到整个网络中,整个配置都由 BlueField 来做,包括交换机上怎么设置 policy 都不需要控制器去做,这样会更安全,扩展性更好。
BlueField 虽然被称为 SuperNIC,但还是由所有的可编程组件、加速组件组成。通过 Arm CPU 仍然可以做编程,还有内置的的 DPU 加速 engine,通过 DPU engine 可以使一些特定的应用得到更好的性能,还有可编程的 PIPELINE 组件来加速优化业务。
上图展示了从 Arm、DPU、PIPELINE 来进行编程业务的提升性能。
BlueField 依赖非常强大的一个软件生态,包括对各种各样基于 BlueField SuperNIC 和 BlueField DPU 上所有的软件都跑在 DOCA 上,在 DOCA 中体现,包括 NVIDIA 的 OFED driver,在未来都会整合到 DOCA 中。
目前 DOCA 支持了各种各样的 OS,特别是对于 Anolis OS 的整合已经完成,在使用 Anolis OS 时,可以容易地对接 DOCA,用到 NVIDIA 的各种网络加速引擎。
InfiniBand 网络
在 AI 应用场景中目前性能最好的是 InfiniBand 网络,不管像 Open AI 构建超过数万张卡这种超大规模的 AI 工厂,还是 Meta 或者微软在最高性能的 AI 平台中都在用 InfiniBand,InfiniBand 包括交换机、网卡、还有上图中所有的软件。
InfiniBand 与 Spectrum-X 有一个最大的差异:InfiniBand 网络可以支持网络计算,比如 Allreduce,包括现在越来越多的 AI 用户在用 Reduce/Scatter/Allgather 代替 Allreduce 来提升通信性能。但无论使用什么,都可以在交换机上来把集合计算的这些操作卸载下来,进一步提升通信的性能。
从传统的以太网再到专门面向 AI 的以太网,Spectrum-X 再到 InfiniBand,其实性能至上是关键,在整个基础平台不变的情况下支持网络升级,就可以得到非常高的性能提升,特别是通过 InfiniBand 网络甚至可以达到两倍以上的提升。对于计算平台来讲,选择一个合适的网络是非常关键的,网络决定了数据中心的性能。
精彩视频回放、课件获取:
2023 龙蜥操作系统大会直播回放及技术 PPT上线啦,欢迎点击下方链接观看~
回放链接:https://openanolis.cn/openanolisconference
技术 PPT :关注龙蜥公众号【OpenAnolis 龙蜥】,回复“龙蜥课件”获取。