云计算革新:以太网 Scale-UP 网络为 GPU 加速赋能

news2024/7/6 20:15:41

 

谈谈基于以太网的GPU Scale-UP网络

   

Intel Gaudi-3 采用 RoCE 互联技术,促进了 Scale-UP 解决方案。业界专家 Jim Keller 倡导以太网替代 NVLink。Tenstorrent 成功应用以太网实现片上网络互联。RoCE 和以太网已成为互联解决方案的新兴趋势,为高性能计算提供了强大且高效的连接选项。

要实现以太网替代 NVLink,需要对 GPU 架构进行全面修改,本质上等同于将 HBM 连接到以太网上并实现一系列通信优化。全球仅有少数公司掌握这项技术,包括针对计算需求的 In-Network-Computing 优化,如 SHARP。

博通打造NVLink竞品,需解决关键挑战:
- 数据传输速度和延迟优化
- 产品互联性和兼容性提升
- 生态系统发展和合作伙伴支持

链接延迟是不可避免的,源于高吞吐量高速 Serdes FEC 和超大型互连。单纯修改包协议或采用 HPC 以太网并不能解决此问题。

2.传输的语义是什么?做网络的这群人大概只懂个SEND/RECV。举个例子,UEC定义的Reliable Unordered Delivery for Idempotent operations(RUDI)其实就是一个典型的技术上的错误,一方面它满足了交换律和幂等律,但是针对一些算子,例如Reduction的加法如何实现幂等?显然这群人也没做过,还有针对NVLink上那种细颗粒度的访存,基于结合律的优化也是不支持的。更一般来说,它必须演进到Semi-Lattice的语义才行。

优化 NVLINK 上的内存池化,解决计算密集型算子(如 KV Cache)的时间/空间权衡问题,从而增强计算能力。

4.动态路由和拥塞控制能力1:1无收敛的Lossless组网对于万卡集群通过一些hardcode的调优没什么太大的问题,而对于十万卡和百万卡规模集群来看,甚至需要RDMA进行长传,这些问题目前来看没有一个商业厂商能解决的。

考虑到超大规模模型训练的一系列需求,把HBM直接挂载在以太网上并实现了一系列集合通信卸载的,放眼全球现在也就只有少数几个团队干过,前三个问题我是在四年前做NetDAM项目时就已经完全解决干净了,第四个去年也在某个云的团队一起解决干净了。下面我们将介绍一些Gaudi3/Maia100/TPU等多个厂商的互联,然后再分析一下NVLink的演进,最后再来谈谈如何能够真正地解决这些问题 at Scale

1. 当前ScaleUP互联方案概述

1.1 Intel Gaudi3

Gaudi的Die架构采用24个RoCE 200Gbps链路,21个用于内部全互联,3个用于外部连接,形成超大规模组网拓扑。每个边缘交换机的交换容量为25.6T。Intel WhitePaper值得深入研究,解决其提出的问题。

1.1.1 拥塞控制

Intel 采用 Selective ACK 机制取代 PFC,并使用 SWIFT 作为拥塞控制算法,避免 ECN。这种方法类似于 Google Falcon 在 Intel IPU 上的 Reliable Transport Engine,为数据中心网络提供了可靠、高效的传输。

1.1.2 多路径和In-Network Reduction

Intel 宣称支持 Packet Spraying,但使用博通交换机而非自有 Tofino。In-Network Reduction 兼容 FP8/BF16 等,而 Operator 仅支持求和、最小值和最大值。UEC 的 In-Network-Computing (INC) 工作组已明确此配置。

1.2 Microsoft Maia100

没有太多的信息,只有4800Gbps单芯片的带宽,然后单个服务器机框4张Maia100,整个机柜8个服务器构成一个32卡的集群。e7565a141158ed6e801440e4d1e8e49f.jpeg放大交换机和互联的线缆来看,有三个交换机,每个服务器有24个400Gbps网络接口,网口间有回环的连接线(图中黑色),以及对外互联线(紫色)。52e8916fea5aae8fee3dd70228ecd6c3.jpeg也就是说很有可能构成如下的拓扑:12b2378a12cd7ced7929d72f7ab5ad64.jpeg即在主板内部构成一个口字形的互联,然后在X方向构成一个环,而在Y方向则是分别构成三个平面连接到三个交换机。交换机上行进行机柜间的Scale-Out连接,每个机柜每个平面总共有32个400G接口, 再加上1:1收敛,上行交换机链路算在一起正好一个25.6T的交换机,这样搭几层扩展理论应该可行,算是一个Scale-Up和Scale-Out两张网络合并的代表。

至于协议对于Torus Ring来看,简单的点到点RoCE应该问题不大,互联到Scale-Out交换机时就需要多路径的能力了。缺点是延迟可能有点大,不过这类自定义的芯片如果不是和CUDA那样走SIMT,而是走脉动阵列的方式,延迟也不是太大的问题。另外Torus整个组就4块,集合通信延迟影响也不大。但是个人觉得这东西可能还是用于做推理为主的,一般CSP都会先做一块推理用的芯片,再做训练的。另外两家CSP也有明确的训练推理区分AWS Trainium/Inferentia, Google也是V5p/V5e。

1.3 Google TPU

TPU互联大家已经很清楚了,Torus Ring的拓扑结构和光交换机来做链路切换。6bd466fe2b6727d09ef1de83a80d8580.jpeg2c3f48f7237ccbdb99014410d69e83b2.jpegOCS有两个目的,一个是按照售卖的规模进行动态切分,例如TPUv5p 单芯片支持4800Gbps的ICI(Inter-Chip Interconnect)连接,拓扑为3D-Torus,整个集群8960块TPUv5p 最大售卖规模为6144块构成一个3D-Torus。d4b18c7ffd41bdfda6fed79f8ac101f6.jpeg通过OCS可以切分这些接口进行不同尺度的售卖, 另一个是针对MoE这些AlltoAll的通信做扩展bisection 带宽的优化。f65b056fe15d0c65c00fd1f453add8db.jpeg还有一个是容错,这是3D Torus拓扑必须要考虑的一个问题,有一些更新是这周NSDI‘24 讲到一个《Resiliency at Scale: Managing Google’s TPUv4 Machine Learning Supercomputer》[2] 后面我们将专门介绍。另一方面Google还支持通过数据中心网络扩展两个Pod构建Multislice的训练,Pod间做DP并行。d8b99aa3ea15e698cd0ce0ed674a77d3.jpeg796fba852b40fed472a86025cbdaf6b4.jpeg

1.4 AWS Trainium

Trainium 架构由 16 片组成一个小型簇集,采用 2D Torus Ring 结构进行片间互连。这种结构确保了高速、低延迟的数据传输,为 AI 和机器学习模型的训练提供了卓越的性能。

1.5 Tesla Dojo

Tesla Transport Protocol(TTP)由 Tesla 开发,简化了芯片内部和外部通信。它整合了 Wafer/NOC 和以太网扩展,实现了统一通信,提升了效率和性能。

54a4c65a1fd04fe0d874d300fa2630ff.jpeg

它通过台积电的System-on-Wafer将25个D1计算单元封装在一个晶圆上, 并采用5x5的方式构建2D Mesh网络互联所有的计算单元, 单个晶圆构成一个Tile.每个Tile有40个I/O Die。2742627e564ff73606234a77ee525f97.jpegTile之间采用9TB/s互联。724f2e0c11eb8c4bdf1172a42aaea3f5.jpeg可以通过片上网络路由绕开失效的D1核或者Tile。92acb763c4d4a55e68961869b9e4fe31.jpeg

对外Scale-Out的以太网有一块DIP,每个D1计算引擎有自己的SRAM, 而其它内存放置在带HBM的Dojo接口卡(DIP)上。f5bd2549af36398aa396e737b0327826.jpeg每个网卡通过顶部的900GB/s特殊总线TTP(Tesla Transport Protocol)连接到Dojo的I/O Die上, 正好对应800GB HBM的带宽,  每个I/O Die可以连接5个Dojo接口卡(DIP)。

001ff3b669c5b9690a9be9b3d38bf794.jpeg

由于内部通信为一个2D Mesh网络, 长距离通信代价很大, 针对片上路由做了一些特殊的设计。bc8bf8392e5d6cbf9f3f0f3ed6b5636a.jpeg路由在片上提供多路径,并且不保序, 同时针对大范围长路径的通信, 它很巧妙的利用Dojo接口卡构建了一个400Gbps的以太网TTPoE总线来做shortcut。ed77895ffb3e8c9ddaee2f9e3ae6df69.jpegDojo通过System-on-wafer的方式构建了基于晶圆尺度的高密度的片上网络, 同时通过私有的片间高速短距离总线构建了9TB/s的wafer间的通信网络. 然后将I/O和内存整合在DIP卡上,提供每卡900GB/s连接到晶圆片上网络的能力,构建了一个超大规模的2D Mesh网络, 但是考虑到片上网络通信距离过长带来的拥塞控制, 又设计了基于DIP卡的400Gbps逃生通道,通过片外的以太网交换机送到目的晶圆上。

1.6 Tenstorrent

Tenstorrent 的片上网络采用简单有效的以太网设计,由 Tensor+ 控制头组成以太网报文,支持多种通信语义。网络结构划分为阶段,每个阶段的指令数和带宽可估计,从而简化映射到核上的约束。
该2D Mesh 结构可扩展至 40960 个核心的大规模互联,提供高效且可扩展的片间通信。

2. Scale-UP的技术需求

2.1 拓扑选择

我们可以注意到在ScaleUp网络选择中,Nvidia当前是1:1收敛的FatTree构建,而其它几家基本上都是Torus Ring或者2D Mesh,而Nvidia后续会演进到DragonFly。5b08c304d692ee996a0a77d02c854f78.jpeg背后的逻辑我们可以在hammingMesh的论文中看到的选择如下:7033ca51058af67f4ce29e8564dbb6f9.jpeg可以看到对于Allreduce带宽来看,Torus是最便宜的,性能也能够基本跑到峰值。但是针对MoE这类模型的AlltoAll就要考察bisection带宽了,而DragonFly无论是在布线复杂度还是GlobBW以及网络直径上都还不错,所以明白了Bill Dally的选择了吧?

2.2 动态路由和可靠传输

当网络规模扩展至十万卡时,现有的流量工程解决方案存在局限性。单板级优化,如RoCE缺陷修复、Adaptive Routing和Packet Spraying,只能部分解决万卡规模问题。
对于超大规模网络,需要同时解决流量工程和亲和性控制的难题。

基于元数据的静态路由,管控平面调度和多轨道技术都可以作为解决方案的组成部分。通过综合应用这些技术,可以有效管理超大规模网络中的海量流量,确保网络性能和可靠性。

算法应对突发流量十分困难。令人担忧的是,人们往往忽视突发流量的根源,执着于通过测试交换机缓冲区来抑制它。一些人甚至诉诸确定性网络和傅立叶分析,这显然是徒劳的。


在工业界,优化调度仍面临挑战,取决于其他厂商的洞察力。
谷歌的研究表明,系统失效和弹性售卖会导致数据碎片,从而增加调度难度。
ICI内部路由解决方案与OCS交换机协作,提供完善的解决方案。
这篇论文深入披露了ICI的架构,包括物理层、可靠传输层、路由层和事务层,为理解该解决方案提供详细的技术见解。

以太网的路由层对于支持 ScaleUP 至关重要,因为它提供 DragonFly 和失效链路切换能力,确保以太网在复杂网络环境下保持高可用性。

3. Scale UP延迟重要么?

GPU延迟隐藏优化
GPU延迟隐藏通过以下方式实现:
* NVLink:内存语义,提供高带宽、低延迟。
* RDMA:消息语义,主要用于异构计算,延迟会更高。
GPU作为吞吐量优化的处理器,追求低延迟会导致实现问题。NVLink的内存语义使其具有较低延迟,而RDMA的消息语义和异构计算实现导致延迟较高。

3.1 RDMA实现的缺陷

RDMA相较NVLink延迟高的问题因CPU限制而起。NVIDIA引入GDA-KI技术,有效降低访存延迟,使得访问延迟变得更加容易隐藏。

3.2 细粒度的内存访问

NVLink 的细粒度访问对传输效率和延迟至关重要。利用以太网 RDMA 替换 NVLink 时,需要采用 HPC 以太网来支持较长的数据包。
此外,为实现 RDMA 消息的内部半格语义,需要遵循 NetDAM 中提出的解决方案。通过满足这些要求,可以有效弥补以太网 RDMA 在替换 NVLink 方面的不足。

  1. 交换律可以保证数据可以用UnOrder方式提交。
  2. 幂等性确保丢包重传不会导致重复处理。但在涉及副作用的加法操作(如 Reduce)时,需要采用事务或数据幂等性来处理。
  3. 结合律针对细粒度的内存访问,通过结合律编排,提升传输效率。

对于访存的需求,在主机内的协议如下:b1ea783e8dc3a8c1ad03078d01ca2899.jpeg通常是一个FLIT的大小,而在这个基础上要支持超大规模的ScaleUP互联和支撑可靠性又要加一些路由头,还有以太网头,还有如果超大规模集群要多租户隔离还有VPC头,这些其实支持起来都没有太大问题的,因为当你考虑到了 结合律即可。但是UEC似乎完全没理解到,提供了RUDI的支持交换律和幂等律支持了,结合律忘了,真是一个失误。而英伟达针对这个问题怎么解的呢?结合律编码:2ddee46de669f321f76ea97c3b873e20.jpegd5e4a10136ebc51440ed979d7f8b3339.jpeg最终细颗粒度访存的问题解决了。34d4ce05cf8a660f7d885cb67a67de01.jpeg下一代的NVLink一定会走到这条路里面来Infiniband和NVLink这两张ScaleOut和ScaleUP网络一定会融合。

3.2 ScaleUP的内存池化

大模型面临 HBM 容量不足的挑战。英伟达通过 Grace 和 NVLink C2C 扩展解决了该问题,采用池化内存以支持 ScaleUP 网络。值得关注的是,英伟达正在探索其他方式来应对这一挑战,如论文中所展示的。

3. 结论

任何一家公司如果想做Ethernet的Scale UP,需要考虑以下大量的问题:

  1. 通过优化访问内存协议并利用 GPU 的缓存,FinePack 可显著缩短延迟。其创新的 Message 语义和缓存处理机制能有效隐藏延迟,提升整体性能。
  2. ScaleUP 网络的动态路由和租户隔离功能至关重要,优化路由以避免碎片问题,特别是当资源受链路故障影响时。
  3. RDMA语义不完善,且直接复制SHARP存在隐患。为实现幂等,需要完善Semi-Lattice语义,支持有副作用操作的幂等实现。
  4. Fabric的多路径转发和拥塞控制,提升整个Fabric利用率;
  5. 大规模内存池化。

NetDAM研究突破性地实现了以太网ScaleUP直连HBM,其消息编码策略与Jim Keller的成就一致,但基于不同出发点。此外,大规模池化和原生In-Network-Computing/Programming加速进一步增强了其功能。通过与多个团队合作,引入了先进的拥塞控制和多路径转发,完善了该方案。NetDAM的论文为以太网在HPC领域应用提供了宝贵的见解,值得深入研读。

探索英特尔® 高迪 3 AI 加速器,实现令人难以置信的 AI 性能。
这款业界领先的加速器提供:
- 高达 40 倍的训练性能提升
- 高达 10 倍的推理延迟降低
- 支持广泛的 AI 框架和模型
通过高迪 3,解锁前所未有的 AI 创新,推动您的业务实现新高度。


Google TPUv4:弹性超算
Google TPUv4 超级计算机是业界首屈一指的机器学习平台,拥有惊人的规模:
* 5,760 个 TPU 单元
* 600 万个 AI 模型训练
* 每天处理 200 PB 数据
该平台采用了创新技术,实现了前所未有的弹性:
* 弹性部署:按需部署 TPU,无需预先配置
* 故障隔离:将工作负载隔离到独立的 TPU,确保可靠性
* 动态弹性:自动扩展和缩小 TPU 容量,优化利用率
TPUv4 的弹性优势使 Google 能够高效管理其庞大的 ML 工作负载,加速模型训练并推动 AI 创新。


 

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1633017.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

区块链技术--编译BSV源码(v1.0.1)

编译好的可执行文件bitcoin-cli 和 bitcoind 下载: https://github.com/youngqqcn/QBlockChainNotes/blob/master/BTC%E7%B3%BB%E5%B1%B1%E5%AF%A8%E5%B8%81/my_bsv_v1.0.1.tar.gz 安装 libminiupnpc wget https://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packa…

商店数据(六)

目录 41.短信发送记录表 42.职员登录记录表 43.会员登录记录表 ​44.后台菜单表 45.商城信息表 46.消息队列表 47.移动端首页按钮管理表 48.商城导航表 41.短信发送记录表 CREATE TABLE wst_log_sms (smsId int(11) NOT NULL AUTO_INCREMENT COMMENT 自增ID,smsSrc t…

IOCP实现UDP Server

IOCP实现UDP Server 1、IOCP原理图 参考文献1:IOCP详解-阿里云开发者社区 (aliyun.com) 参考文献2:IOCP编程之基本原理 - 史D芬周 - 博客园 (cnblogs.com) 原理图 同步以及异步 2、UDP Server代码以及测试代码 // iocpudpdemo.cpp : 此文件包含 &qu…

再谈钓鱼邮件

再谈钓鱼邮件 概述 最近对邮件的防御策略进行了更新,结合威胁情报和安全沙箱对收到的钓鱼邮件进行了分析,期望这些案例能对大家有所帮助。 网关上拦截的钓鱼邮件基本可以分三个类别:链接钓鱼邮件、附件钓鱼邮件以及邮件头伪造钓鱼邮件&…

在谷歌浏览器访问特定的网站 提示此网站无法提供安全连接

1、问题描述: 最近通过谷歌浏览器访问某些网址提示此网站无法提供安全连接,换一个浏览器就能正确打开! 例子如下: 访问 https://baijiahao.baidu.com/s?id1788533041823242656 2、查找原因 通过控制台发现请求未有响应码&#xf…

【数据分析面试】34.填充NaN值 (Python:groupby/sort_value/ffill)

题目:填充NaN值 (Python) 给定一个包含三列的DataFrame:client_id、ranking、value 编写一个函数,将value列中的NaN值用相同client_id的前一个非NaN值填充,按升序排列。 如果不存在前一个client_id,则返…

小红书从记忆机制解读信息检索,提出新范式获得 EACL Oral

近日,来自小红书搜索算法团队的论文《Generative Dense Retrieval: Memory Can Be a Burden》被自然语言处理领域国际会议 EACL 2024 接收为 Oral,接受率为 11.32%(144/1271)。 他们在论文中提出了一种新颖的信息检索范式——生成…

python环境安装jupyter

安装完毕之后下一步可以参考:配置jupyter的启动路径-CSDN博客 1 前提条件:python环境 系统:win10 python:本地已经有python,可以查看本地的python版本: C:\Users\PC>python --version Python 3.8.10 …

为什么本国货币的贬值会导致本国物价的上涨

本国货币贬值意味着其对外国货币的汇率下降,也就是说,同样数量的本国货币现在能兑换的外国货币减少了。这种情况下,本国货币的购买力相对于外国货币减弱了。本国货币贬值可能导致本国物价上涨的几个原因: 进口成本上升&#xff1a…

38.WEB渗透测试-信息收集-信息收集-企业信息收集(5)

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于: 易锦网校会员专享课 上一个内容:37.WEB渗透测试-信息收集-企业信息收集(4) 上个内容用到了cdn&am…

Windows Server 评估版转换(升级)为完整版

临时方法 获取 Windows Server 的剩余宽限期 Slmgr /dliWindows Server免费试用期可以使用以下命令合法延长5次,共180天: slmgr /rearm这意味着所评估的 Windows Server 的最长可用时间为 3 年 ( 180 days * 6)。 试用期到期后,Windows S…

Python对Excel两列数据进行运算

👽发现宝藏 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 Python对Excel两列数据进行运算 在日常工作中,经常会遇到需要对Excel表格中的数…

win中python中OpenCV使用cv2.imshow()报错的解决办法

1. 问题 cv2.error: OpenCV(4.9.0) D:\a\opencv-python\opencv-python\opencv\modules\highgui\src\window.cpp:1272: error: (-2:Unspecified error) The function is not implemented. Rebuild the library with Windows, GTK 2.x or Cocoa support. If you are on Ubuntu o…

STM32读写备份寄存器BKP

今天学习的读写STM32的备份寄存器BKP的步骤,这节知识是比较简单的,一共也就两大部: 这个BKP寄存器的意思就是在芯片的VB引脚上接个电池,就能保存其寄存器中的数据掉电不丢失。先来看看电池的接法: 好,下面…

3分钟了解拍摄VR全景需要哪些硬件

VR全景图片是一张水平方向360度,垂直方向180度, 图片尺寸宽高比为2:1的图片。 通过720yun APP或720yun官网上传生成全景H5页面,即可360度全方位观看画面中的景象。 拍摄VR全景有很多方法,下面介绍用单反相机、全景相机、智能手机…

【Paddle】PCA线性代数基础 + 领域应用:人脸识别算法(1.1w字超详细:附公式、代码)

【Paddle】PCA线性代数基础及领域应用 写在最前面一、PCA线性代数基础1. PCA的算法原理2. PCA的线性代数基础2.1 标准差 Standard Deviation2.2 方差 Variance2.3 协方差 Covariance2.4 协方差矩阵 The Covariance Matrix2.5 paddle代码demo①:计算协方差矩阵2.6 特…

华院计算登榜『2024福布斯中国人工智能科技企业TOP 50』

4月28日,福布斯中国正式发布“2024福布斯中国人工智能科技企业TOP 50”榜单。华院计算凭借其在人工智能领域的卓越成就与深远影响力,荣膺殊荣,成功跻身榜单。 工业和信息化部2024年4月表示,中国人工智能企业数量已超过4,500家。AI…

你的3D模型不是数字孪生!

大型资产的新技术往往是根据其带来运营效率提升的能力来判断的。 但是,当一项令人兴奋的创新出现时,运营商通常会承担经过计算的风险并对其潜力进行投资,即使该技术缺乏保证在规定时间范围内带来收益的验证。 数字孪生(digital …

学习笔记:能量信号与功率信号(一)

目录 一、能量信号(Energy Signal) 二、功率信号(Power Signal) 三、信号关系图 四、总结 能量信号和功率信号是信号分析中两个基本的概念,它们主要用来描述信号在时间域中能量分布的特性,对于理解信号…

LLM - 大语言模型(LLM) 的 评估体系

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://blog.csdn.net/caroline_wendy/article/details/138160155 大语言模型(LLM)的评估是复杂且多维的过程,涉及多个方面,包括评估体系、评估方法、评估实践。评估体系包括评估数据集、模型输出、样本/输出变换…