智算网络中Scale-out和Scale-up网络的技术原理

274 篇文章 0 订阅
274 篇文章 1 订阅

e439bdbc935b06c297831c303570d489.jpeg 

智算网络中Scale-out网络和Scale-up网络的本质区别是什么?

   

一、什么是智算中心的Scale-out网络和Scale-up网络

数据中心网络总体上可分为两大类:通算网络和智算网络。通算网络主要用于支持传统的计算任务和应用,如企业的IT系统、网站托管、电子邮件服务等;而智算网络则专门用于支持人工智能(AI)和机器学习(ML)任务。这类网络需要更高的计算能力和更低的延迟,以处理大量的数据并执行复杂的计算任务。

当前,主流的机器学习(ML)智算网络和通算网络在架构上有很大差异。通算网络通常只有一张网,而智算网络则可能包含两张网。如下图所示:

3d059682cea5bd43e82626a3533ab082.jpeg

智算中心的两张网中,一张是通过ETH/IB实现GPU之间的RDMA功能的网络,即所谓的前端网络,通常称作Scale-out网络。一张是GPU之间高速互连,可以实现POD内跨GPU之间的内存的读写,即所谓的后端网络,即通常说的scale-up网络。

在大模型的智算网络中,训练和推理对后端网络的需求各有不同。以marvell的图为例,训练scale-up网络时所需的带宽容量要求更高。

1e24a195d937cfd2e6c558f4a6b9e4f4.jpeg

二、scale-out和scale-up网络现状

Nvidia的scale-up网络是一种面向GPU互联的网络,可以实现GPU算力Scale Up扩展。该网络采用自研NVLink互联和NVLink网络来实现GPU算力Scale Up扩展,相比于基于InfiniBand网络和基于Ethernet的RoCE网络形成差异化竞争力。

当前,基于Nvidia的NVLink技术的scale-up网络广泛应用于N系统的GPU。以DGX B200 NVL72为例,其由18个compute tray和9个switch tray组成,实现了高效的扩展。这一网络由Nvidia紧密控制,确保了稳定性与性能。

Scale-out网络以DGX B200 NVL72为例,每个compte tray的4个智能网卡和1个DPU卡组成。该网络支持N系IB/ETH或开放的ETH系,如UEC等性能提升方案GSE。国内智算网络普遍采用基于scale-out开发的架构。

根据Nvidia的解释,cluster和superpod这两个概念需要被区分开来。在superpod中,所有的GPU都通过NVLink高速总线互相连接,形成了一个全带宽互连的域,也就是所谓的scale-up网络。

Cluster是由所有GPU服务器组成的一个网络群的总称,一个cluster可以有多个superpod组成,通过scale-out网络来连接。Superpod是一个逻辑设备,它代表了一组Pod,这些Pod共享相同的硬件资源和存储卷。

    对于N系的GPU服务器来说,目前的Scale-up的网络规模一般可以认为是scale-out网络的十倍。从下图中 GB200 超级芯片的接口上可以看出,NVLink、InfiniBand、Ethernet 三种网络的容量配比为,NVLink 网络 14.4Tb/s,InfiniBand 网络 1.6Tb/s,Ethernet 网络 400Gb/s。三种网络的端口带宽之比为 NVLink : InfiniBand : Ethernet = 36 : 4 : 1。

e3075239ae7db42842f20d1fc51369f5.jpeg

"Scale-up的Nvlink网络,其带宽是RDMA IB的近10倍,为CPU间数据存储提供了强大支持。这种网络主要应用于智能网卡的域中,并在实际应用中作为scale-out网络发挥作用。"

三、为什么要区别这两个网络

本质上,Scale-out和Scale-up两张网旨在实现GPU间内存数据的高效传输。然而,为何要采用双网络并制造如此大的骚动呢?

    这个主要是起源于两点,一个是大模型的涌现现象,即对于ML来说,模型越大越好,夸张点说是上不封顶。另外一个就是在目前的大模型训练的时候,大模型的数据量对于单台GPU的服务器来说已经太大,必须通过各种的并行处理的方式,把数量的处理和存储分散到多个GPU中去,这样也就会带来一系列的问题,包括各种并行之间的通信开销,并行分割的开销,编程的复杂程度等等。例如,Transformer模型的注意力机制前馈网络都需要大量的内存和计算资源。更大的GPU内存可以容纳整个模型,避免频繁的分割和通信开销。

    对于大模型训练,最理想的方式就是一个超级大的supersupersuper chip的GPU,这样的话,不可以节省并行切割的开销。但是,现实肯定不现实的,为此,大家就想到了一个办法,把大模型分解为两大类,一个是需要在高频度进行数据交互的,例如张量并行和专家并行。把这些并行处理放置到GPU之间通过超高带宽,超低时延互连的网络中进行处理,压缩他们之间的通讯开销成本。当然,这个网络的成本是否非常昂贵的,这就是Scale-up网络,或 Load-Store/内存语义网络。这是一个追求极致性能的互连网络

另一类方法是将数据分解为相对独立的并行任务,如流水线并行和数据并行。这类技术被称为消息语义网络或scale-out网络。利用现有的以太网技术体系,结合适度的改造,我们可以在保持较低成本的同时,更好地满足性能需求。

在scale-out网络中,RDMA(RoCE)发挥着关键作用。尽管它提供了类似内存的访问模式,但在处理大量小容量内存读写时,如张量并行中的数据操作,效率相对较低。因此,我更倾向于不将其归为内存语义网络或Load-Store语义网络。

    通过上面两个网络的划分,实现了性能和成本的最优化。

四、时延是这个两个网络的本质区别

"现在,我们来探讨这两个网络的本质差异。在大模型训练中,它们都负责GPU间的数据传输,但存在不可忽视的区别。"

1、动态时延和静态时延

网络时延是指数据从发送端到接收端所需的时间。根据您的描述,网络时延可以分为静态时延和动态时延两部分。静态时延包括基本的互联、转发和交换时延,这些是网络硬件和设计的固有特性,通常与网络的物理布局和设备性能有关。动态时延与网络的带宽、吞吐量和利用率等相关,受网络当前负载和流量管理策略的影响,因此会随时间和网络状态变化。例如通过UEC对以太网进行优化,主要就是降低了网络的动态时延。

2、scale-up需要纳秒级的时延

"Scale-up网络,也被称为总线域网络,是一种极致性能的网络结构。在这个领域中,GPU能将其他GPU的存储视为本地存储区,实现直接读写。因此,时延控制变得极其重要。如果GPU主频超过1GHz且时钟周期小于1纳秒,例如在内存访问中,本地内存访问的典型时延通常低于100纳秒。为了匹配这种速度,我们在通过网络进行内存访问时,需要将时延控制在1微秒以下。"

为满足特定业务需求,网络设计需紧密耦合于业务,摒弃传统网络的传输层和网络层。信用机制(Credit)和链路层的重传机制确保可靠性,而非数据包式重传。

    当前,基于PAM4调制和基于ADC和DSP架构的112Gbps和224Gbps SerDes电互联技术对低时延的scale-up网络都可视是一个负担。DSP架构的112Gbps的SerDes的静态时延约为20纳秒,由于算法复杂度的提升,224Gbps SerDes技术的静态时延可能会更高。当前接口采用的标准RS(544, 514) FEC,在100Gbps吞吐时引入的时延大约为100纳秒,因此如果还是使用PAM4的方案的话,信道编码方面也需要引入全新的FEC方案。

3、scale-out网络的时延可达到ms级

在scale-out网络中,传统网络通常采用分层架构,例如OSI模型,具有清晰定义的传输层和网络层,以支持更加灵活的通讯和数据传输方式。这种分层架构也带来了时延不可控的代价。

为了解决这个问题,一些新的网络架构被提出来,例如SDN(软件定义网络)和NFV(网络功能虚拟化)。这些架构可以提供更高的灵活性和可编程性,从而减少时延并提高性能。

传统数据中心网络的业务受限于带宽,直接影响用户体验。如图像、音频质量,视频清晰度,文件下载速度等皆与带宽息息相关。更高的带宽意味着更大的业务承载量和更优的用户体验。为确保用户感受系统的即时响应,端到端网络时延需控制在1至10毫秒内,整体时延不超过100毫秒。这是基于人感知能力设定的上限,超出此范围可能导致用户感觉系统反应迟缓或不响应。

面向AI/HPC的计算网络与传统数据中心网络在业务特征上具有相似性,如单业务流带宽远低于接口或管道带宽;流级负载均衡提高网络利用率并避免乱序;异步和准同步通信方式适应业务流间关联性较弱;聚合后的流量可能在长周期内呈现规律性;对低时延要求不高;端侧传输层确保可靠性。

考虑到成本和技术亲和性,scale-out网络采用传统网络的产业链元素,如交换机和光模块。在此基础上进行性能升级,如UEC和GSE等,以降低网络动态时延。尽管如此,基于传统网络设计的静态时延仍需关注。

为了实现超大规模集群和提升技术能力,scale-out网络通过多级交换机组成的网络连接。这使得整个网络的时延降至毫秒级,提高了性能。

Scale-up网络和scale-out网络的本质区别在于,scale-up网络是直接提升机器的配置规格,是最直接的扩展手段,计算和存储均可通过 Scale-up 的方式来进行扩展,但扩展空间有限,相对成本较高。而scale-out网络则是通过增加更多的服务器来扩展系统,这样可以更好地利用资源,提高系统的可扩展性和灵活性 。

     五、scale-out和scale-up,是否可以合成一张网呢?

Scale-out网络与Scale-up网络分别代表了数据中心网络的两种不同发展路径,它们在设计理念和应用目标上有着显著差异。Scale-out网络沿袭了传统的数据中心架构,而Scale-up网络则着重于通过提升单一设备的性能来增强整个系统的能力。

传统网络技术侧重于连接地理分散的节点,实现远程通讯和信息交换,满足长距离传输、异构设备互联及多样化业务的需求。而scale-up网络则专注于在较小的物理范围内集成更多资源至单个节点,从而提高系统整体性能并紧密耦合于业务。

为了满足人工智能(AI)和通用人工智能(AGI)时代智算网络的需求,仅依靠传统数据中心网络的load-store能力或从传统load-store技术中提升网络性能已不再足够。这是因为传统数据中心网络技术的演进无法实现scale-up网络所需的低时延和高可靠性,同时还可能带来不必要的兼容性负担。另一方面,基于load-store技术的扩展也无法满足网络规模的快速增长需求。这种局限性的根本原因在于两者的发展目标和出发点存在本质差异。

在业务层面,scale-up/NVLink网络以load-store语义为基础,而scale-out/InfiniBand则采用消息语义。有趣的是,224G代际的NVSwitch和InfiniBand交换机规格相近,但这两种网络在未来将保持独立发展,不会融合。

 

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

科技互联人生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值