NVIDIA AI 新网络助力龙蜥提升网络通信速率 原创

龙蜥社区OpenAnolis
发布于 2024-3-28 20:39
浏览
0收藏

编者按:AI 不仅影响操作系统自身和上层应用生态,它也推动数据中心以及内部网络。在 2023 龙蜥操作系统大会全面拥抱智算时代分论坛上,NVIDIA 网络产品部亚太区高级总监宋庆春分享了 AI 新网络在龙蜥操作系统的支持情况,以及 NVIDIA 网络在 AI 方面最新的一些进展状况和看法。以下为分享原文:

NVIDIA AI 新网络助力龙蜥提升网络通信速率-鸿蒙开发者社区(图/NVIDIA 网络产品部亚太区高级总监宋庆春)

AI 新网络解决的是什么问题?那在新网络中主要解决以下两个问题:第一是在东西向上以性能至上,要将 AI 性能发挥到最佳。第二在南北向要做 offload,因为南北向上有各种操作,通过新网络技术将各种操作 offload 出来放在最合适的地方,让南北向操作都发挥最佳的性能,同时不浪费资源。

未来数据中心的发展趋势

数据中心成为了计算机。随着数据中心的发展,现在国内的算力资源中通用算力占绝大多数,接下来是智算算力、超算算力。在一到两年内智算算力会成为国内算力的主要组成部分,超越通用算力,因为应用场景在发生变化,传统的数据中心不再是发展趋势。未来会向 AI 工厂和生成式 AI 云两个方向进行发展,成为数据中心发展的新趋势。

NVIDIA AI 新网络助力龙蜥提升网络通信速率-鸿蒙开发者社区


AI 工厂要构建一个非常庞大的数据中心,在数据中心中跑一个或者少数业务,规模很大,但因为跑的业务很少,所以需要集中成千上万的 CPU、GPU 跑单一业务。因此 AI 工厂要求性能非常高,单一的 CPU、GPU 已经不能解决,网络才是关键。当构建到几十万台服务器时,性能的好坏取决于网络。在 AI 工厂中 NVLink 网络加上 InfiniBand 网络是最佳组合

生成式 AI 云在如此庞大的市场中需要有很强的算力和云的灵活性,为此 NVIDIA 推出新一代网络。随着大模型的出现,一年内已经掀翻了很多传统模式,在未来这样的趋势会越来越明显。传统的数据中心架构会变得越来越少,未来的数据中心会朝着 AI 工厂和生成式 AI 云方向发展。


未来数据中心的网络架构需要专门面向 AI 的网络。

NVIDIA AI 新网络助力龙蜥提升网络通信速率-鸿蒙开发者社区


AI 数据中心中是成千上万的机器在运行业务,如果业务的耦合性很强,每一个CPU、服务器的快慢都会影响到业务的性能。由于是成千上万的机器联合作业,通信效率非常关键,因此需要用 RDMA 技术,它在通信时与 CPU 无关,扩展性不依赖于 CPU,增加新的计算点时不会影响到通信效率。此外对 Jitter、对抖动性容忍度很低,在跑一个业务时,其中某一个点如果低性能会影响到整个业务性能。在构建网络时为了能达到更高性能,要组织一个无抖动的网络。在 AI 业务场景中,通信是 bursty 突发式。

NVIDIA AI 新网络助力龙蜥提升网络通信速率-鸿蒙开发者社区


传统的数据中心无法解决 bursty 带来的这些问题,所以在传统的数据中心中运行业务时经常会产生很多拥塞,产生拥塞会带来通信的延迟很长,带宽被大大拉低。

NVIDIA AI 新网络助力龙蜥提升网络通信速率-鸿蒙开发者社区


为了解决该问题,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数据,网络如何改进

NVIDIA AI 新网络助力龙蜥提升网络通信速率-鸿蒙开发者社区


上面介绍了 Spectrum-X,包括了 Spectrum-4 交换机和 BlueField-3 和上方的软件。


接下来介绍端到端 RDMA 的动态路由。上图中假如说有两个 message 需要发送到接收端,每个 message 中四个 packet,当 packet 到了网络上,网络会把 packet 分到所有网络的链路上。当这个 packet 到达了终点,由于传送过程中被分散到了整个网络后,到终点时有可能会出现包乱序,出现乱序后,在终点需要有能力把乱序的数据再重组,当应用看到数据时,是一个有序的数据。在网络可以接受乱序,只要应用看到的是有序的数据就可以,这样就需要 DPU 来做数据的乱序重组。通过这样的乱序重组、动态路由,可以让网络传输效率相比较传统的以太网络提升 1.6 倍

NVIDIA AI 新网络助力龙蜥提升网络通信速率-鸿蒙开发者社区


当网络传输效率提升 1.6 倍后,整个网络的通信效率达到了 95% 以上,接近了 100%,网络拥塞的问题可以相应解决,通信延迟大大降低,通信带宽也大幅提升,实现网络可预测的一个性能。

NVIDIA AI 新网络助力龙蜥提升网络通信速率-鸿蒙开发者社区


AI 网络相比较传统的以太网,左图是全球最大的一个云服务公司的业务场景。


在一个最优的选择情况下(最优任务 Placement),即将 AI 任务放在最理想的情况,例如做了各种各样的优化,在分配任务时完全按照优化的布置来分配任务。中间情况 Average placement 指正常把任务分发在云上,管理软件根据可用资源把 AI 任务分发下去。另外最差情况,比如有 100 台交换机,100 台交换机下挂了很多服务器,有一个 AI 任务需要 100 个 GPU,100 个 GPU 正好分配到 100 个交换机下,就是最差的情况。在以上三种不同的情况下,即使最优的情况,都无法达到全部带宽,而且性能每次使用时都不稳定,中间总是有抖动 jitter,无法达到最优的 AI 性能。通过 Spectrum-X 后,不管在哪一种状况下下都可以达到全部的带宽,而且没有 jitter,测试多少次最后看到的系统性能都一样。

NVIDIA AI 新网络助力龙蜥提升网络通信速率-鸿蒙开发者社区


为了能让用户容易使用到基于 Spectrum-X 的软件和硬件,NVIDIA 构建了基于 Spectrum-X 的 2000 个 GPU 的一个数据中心。


那 NVIDIA 是如何构建 AI 数据中心的?在构建中心时使用到了数据孪生技术,在构建物理数据中心前已经做了很多工作,构建了一个虚拟的数字数据中心。在数据中心上所有的配置、验证,都是在虚拟的环境中完成的。未来数据中心的趋势是利用数字孪生技术来快速构建数据中心。

DPU 在 AI 网络带来的价值

NVIDIA AI 新网络助力龙蜥提升网络通信速率-鸿蒙开发者社区


BlueField-3 在 AI 云上 BlueField 叫做 SuperNIC,主要面向东西向流量。在面向南北向流量,做流量南北向操作时叫 DPU,但是在做东西向性能加速时叫 SuperNIC,在 AI 网络中,主要功能还是 SuperNIC 功能。在动态路由、拥塞控制上 BlueField 不可或缺。在 Multi-Tenant 上也做了进一步性能优化,以及在完善生态系统上做了很多工作。

NVIDIA AI 新网络助力龙蜥提升网络通信速率-鸿蒙开发者社区


在 Multi-Tenant 环境中使用 Blue-Field 有什么好处?


BlueField 可以支持传统的基于 controller 多租户的平台,与传统网络相同。在 BlueField 上有一个功能,看上图左边中没有控制器 controller,所有的工作、租户之间的控制都由 BlueField 去做,只要增加了新的服务器,就可以横向扩展规模,服务器中的 BlueField 就可以加入到整个网络中,整个配置都由 BlueField 来做,包括交换机上怎么设置 policy 都不需要控制器去做,这样会更安全,扩展性更好。

NVIDIA AI 新网络助力龙蜥提升网络通信速率-鸿蒙开发者社区


BlueField 虽然被称为 SuperNIC,但还是由所有的可编程组件、加速组件组成。通过 Arm CPU 仍然可以做编程,还有内置的的 DPU 加速 engine,通过 DPU engine 可以使一些特定的应用得到更好的性能,还有可编程的 PIPELINE 组件来加速优化业务。

NVIDIA AI 新网络助力龙蜥提升网络通信速率-鸿蒙开发者社区


上图展示了从 Arm、DPU、PIPELINE 来进行编程业务的提升性能。

NVIDIA AI 新网络助力龙蜥提升网络通信速率-鸿蒙开发者社区


BlueField 依赖非常强大的一个软件生态,包括对各种各样基于 BlueField SuperNIC 和 BlueField DPU 上所有的软件都跑在 DOCA 上,在 DOCA 中体现,包括 NVIDIA  的 OFED driver,在未来都会整合到 DOCA 中。


目前 DOCA 支持了各种各样的 OS,特别是对于 Anolis OS 的整合已经完成,在使用 Anolis OS 时,可以容易地对接 DOCA,用到 NVIDIA 的各种网络加速引擎。

InfiniBand 网络

NVIDIA AI 新网络助力龙蜥提升网络通信速率-鸿蒙开发者社区


在 AI 应用场景中目前性能最好的是 InfiniBand 网络,不管像 Open AI 构建超过数万张卡这种超大规模的 AI 工厂,还是 Meta 或者微软在最高性能的 AI 平台中都在用 InfiniBand,InfiniBand 包括交换机、网卡、还有上图中所有的软件。

NVIDIA AI 新网络助力龙蜥提升网络通信速率-鸿蒙开发者社区


InfiniBand 与 Spectrum-X 有一个最大的差异:InfiniBand 网络可以支持网络计算,比如 Allreduce,包括现在越来越多的 AI 用户在用 Reduce/Scatter/Allgather 代替 Allreduce 来提升通信性能。但无论使用什么,都可以在交换机上来把集合计算的这些操作卸载下来,进一步提升通信的性能。


从传统的以太网再到专门面向 AI 的以太网,Spectrum-X 再到 InfiniBand,其实性能至上是关键,在整个基础平台不变的情况下支持网络升级,就可以得到非常高的性能提升,特别是通过 InfiniBand 网络甚至可以达到两倍以上的提升。对于计算平台来讲,选择一个合适的网络是非常关键的,网络决定了数据中心的性能。


精彩视频回放、课件获取:

2023 龙蜥操作系统大会直播回放及技术 PPT上线啦,欢迎点击下方链接观看~

回放链接:​​https://openanolis.cn/openanolisconference​

技术 PPT :关注龙蜥公众号【OpenAnolis 龙蜥】,回复“龙蜥课件”获取。

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
收藏
回复
举报
回复
    相关推荐