0
简体中文

新闻中心
见行见新,洞悉未来

智算中心网络架构选型及对比
2023-08-08 860

随着以 GPT3.0 为代表的大模型展现出令人惊艳的能力后,智算业务往海量参数的大模型方向发展已经成为一个主流技术演进路径。以自然语言处理(NLP)为例,模型参数已经达到了千亿级别。计算机视觉(CV) 、广告推荐、智能风控等领域的模型参数规模也在不断的扩大,正在往百亿和千亿规模参数的方向发展。

大模型训练中大规模的参数对算力和显存都提出了更高的要求。以GPT3为例,千亿参数需要2TB显存,当前的单卡显存容量不够。即便出现了大容量的显存,如果用单卡训练的话也需要32年。为了缩短训练时间,通常采用分布式训练技术,对模型和数据进行切分,采用多机多卡的方式将训练时长缩短到周或天的级别。

分布式训练系统的整体算力并不是简单的随着智算节点的增加而线性增长,而是存在加速比,且加速比小于 1。存在加速比的主要原因是:在分布式场景下,单次的计算时间包含了单卡的计算时间叠加卡间通信时间。因此,降低卡间通信时间,是分布式训练中提升加速比的关键,需要重点考虑和设计。

降低多机多卡间端到端通信时延的关键技术是 RDMA 技术。RDMA 可以绕过操作系统内核,让一台主机可以直接访问另外一台主机的内存。

实现RDMA的方式有InfiniBand、RoCEv1、RoCEv2、i WARP 四 种。其 中 RoCEv1技术当前已经被淘汰,iWARP使用较少。当前RDMA技术主要采用的方案为InfiniBand和 RoCEv2 两种。

在 InfiniBand 和 RoCEv2 方案中,因为绕过了内核协议栈,相较于传统 TCP/IP 网络,时延性能会有数十倍的改善。在同集群内部一跳可达的场景下,InfiniBand 和 RoCEv2 与传统 IP 网络的端到端时延在实验室的测试数据显示,绕过内核协议栈后,应用层的端到端时延可以从 50us(TCP/IP),降低到 5us(RoCE)或 2us(InfiniBand)。

在完成计算任务后,智算集群内部的计算节点需要将计算结果快速地同步给其他节点,以便进行下一轮计算。在结果同步完成前,计算任务处于等待状态,不会进入下一轮计算。如果带宽不够大,梯度传输就会变慢,造成卡间通信时长变长,进而影响加速比。

要满足智算网络的低时延、大带宽、稳定运行、大规模以及可运维的需求,目前业界比较常用的网络方案是 InfiniBand方案和 RoCEv2 方案

InfiniBand网络介绍

InfiniBand网络的关键组成包括Subnet Manager(SM)、InfiniBand 网卡、InfiniBand交换机和InfiniBand连接线缆。

支持 InfiniBand 网卡的厂家以 NVIDIA 为主。下图是当前常见的 InfiniBand 网卡。InfiniBand 网卡在速率方面保持着快速的发展。200Gbps 的 HDR 已经实现了规模化的商用部署,400Gbps 的 NDR的网卡也已经开始商用部署。

在InfiniBand交换机中,SB7800 为 100Gbps 端口交换机(36*100G),属于 NVIDIA 比较早的一代产品。Quantum-1 系列为 200Gbps 端口交换机(40*200G),是当前市场采用较多的产品。

在 2021 年,NVIDIA 推出了 400Gbps 的 Quantum-2 系列交换机(64*400G)。交换机上有 32 个 800G OSFP(Octal Small Form Factor Pluggable)口,需要通过线缆转接出 64 个 400G QSFP

InfiniBand 交换机上不运行任何路由协议。整个网络的转发表是由集中式的子网管理器(Subnet Manager,简称 SM)进行计算并统一下发的。除了转发表以外,SM 还负责管理 InfiniBand 子网的 Partition、QoS 等配置。InfiniBand 网络需要专用的线缆和光模块做交换机间的互联以及交换机和网卡的互联。

InfiniBand 网络方案特点:原生无损网络

InfiniBand 网络采用基于 credit 信令机制来从根本上避免缓冲区溢出丢包。只有在确认对方有额度能接收对应数量的报文后,发送端才会启动报文发送。InfiniBand 网络中的每一条链路都有一个预置缓冲区。发送端一次性发送数据不会超过接收端可用的预置缓冲区大小,而接收端完成转发后会腾空缓冲区,并且持续向发送端返回当前可用的预置缓冲区大小。依靠这一链路级的流控机制,可以确保发送端绝不会发送过量,网络中不会产生缓冲区溢出丢包。

RoCEv2 网络介绍

InfiniBand 网络在一定程度上是一个由 SM(Subnet Manager,子网管理器)进行集中管理的网络。而 RoCEv2 网络则是一个纯分布式的网络,由支持 RoCEv2 的网卡和交换机组成,一般情况下是两层架构。

支持 RoCE 网卡的厂家比较多,主流厂商为 NVIDIA等厂商。数据中心服务器网卡主要以 PCIe 卡为主。RDMA 网卡的端口 PHY 速率一般是 50Gbps 起,当前商用的网卡单端口速率已达 400Gbps。

当前大部分数据中心交换机都支持 RDMA流控技术,和RoCE网卡配合,实现端到端的RDMA通信。

高性能交换机的核心是转发芯片。当前市场上的商用转发芯片用的比较多的是博通的Tomahawk 系列芯片。其中Tomahawk3 系列的芯片在当前交换机上使用的比较多,市场上支持Tomahawk4 系列的芯片的交换机也逐渐增多。

RoCEv2 承载在以太网上,所以传统以太网的光纤和光模块都可以用。

RoCEv2 网络方案特点

RoCE方案相对于 InfiniBand 方案的特点是通用性较强和价格相对较低。除用于构建高性能 RDMA 网络外,还可以在传统的以太网络中使用。但在交换机上的 Headroom、PFC、ECN 相关参数的配置是比较复杂的。在万卡这种超大规模场景下,整个网络的吞吐性能较 InfiniBand 网络要弱一些。

支持 RoCE 的交换机厂商较多,支持 RoCE 的网卡当前市场占有率比较高的是 NVIDIA 的 ConnectX 系列的网卡。

InfiniBand 和 RoCEv2网络方案对比

从技术角度看,InfiniBand 使用了较多的技术来提升网络转发性能,降低故障恢复时间,提升扩展能力,降低运维复杂度。

具体到实际业务场景上看,RoCEv2 是足够好的方案,而 InfiniBand 是特别好的方案。

业务性能方面:由于 InfiniBand 的端到端时延小于 RoCEv2,所以基于 InfiniBand 构建的网络在应用层业务性能方面占优。但 RoCEv2 的性能也能满足绝大部分智算场景的业务性能要求。

业务规模方面: InfiniBand 能支持单集群万卡 GPU 规模,且保证整体性能不下降,并且在业界有比较多的商用实践案例。RoCEv2 网络能在单集群支持千卡规模且整体网络性能也无太大的降低。

业务运维方面: InfiniBand 较 RoCEv2 更成熟,包括多租户隔离能力,运维诊断能力等。

业务成本方面: InfiniBand 的成本要高于 RoCEv2,主要是 InfiniBand 交换机的成本要比以太交换机高一些。

业务供应商方面: InfiniBand 的供应商主要以 NVIDIA 为主,RoCEv2 的供应商较多。

公众号
电话
027-5972 6363
购物车
0