0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

详解PCIe和NVLink两种互联技术

SDNLAB 来源:SDNLAB 2023-10-17 11:25 次阅读

计算机网络通信中两个重要的衡量指标是带宽和延迟,AI 网络也是如此。在向百亿级及以上规模的发展过程中,影响AI计算集群性能的关键并不只在于单个芯片的处理速度,每个芯片之间的通信速度也尤为重要。

目前GPU卡间互联的主要协议是PCIe和NVlink,服务器间互联则是RDMA以太网。之前我们有谈过IB和RoCE(IB和RoCE,谁更适合AI数据中心网络?),本文将主要介绍PCIe和NVLink两种互联技术。

01PCIe :高带宽扩展总线

总线是服务器主板上不同硬件互相进行数据通信的管道,可以简单理解为生活中的各种交通道路。总线对硬件间数据传输速度起着决定性的作用,目前最流行的总线协议为PCIe(PCI-Express),最早由Intel于2001年提出。

PCle主要用于连接CPU与各类高速外围设备,如GPU、SSD、网卡、显卡等。与传统的PCI总线相比,PCIe采用点对点连接方式,具有更高的性能和可扩展性。伴随着AI、自动驾驶、AR/VR等应用快速发展,计算要求愈来愈高,处理器I/O带宽的需求每三年实现翻番,PCIe也大致按照3年一代的速度更新演进,每一代升级几乎能够实现传输速率的翻倍,并有着良好的向后兼容性。

2003 年PCIe 1.0 正式发布,可支持每通道传输速率为 250MB/s,总传输速率为 2.5 GT/s。

2007 年推出PCIe 2.0 规范。在 PCIe 1.0 的基础上将总传输速率提高了一倍,达到 5 GT/s,每通道传输速率从 250 MB/s 上升至 500 MB/s。

2022 年 PCIe 6.0 规范正式发布,总带宽提高至 64 GT/s。

2022年6月,PCI-SIG联盟宣布PCIe 7.0版规范,单条通道(x1)单向可实现128GT/s传输速率,计划于2025年推出最终版本。

wKgZomUt_s2AcijgAAITpRKRM1w154.png

PCIe 1.0 到 6.0 不同 Lane 下的带宽变化

Retimer

在PCIe标准的迭代过程中,随着通信速率的逐步提高,信号质量也会受到影响,为应对愈演愈烈的信号衰减问题,PCIe从4.0时期开始引入信号调理芯片:

PCIe Retimer

Retimer是一种数模信号混合芯片,功能主要为重新生成信号。Retimer 先恢复抖动的时钟信号,再生成新信号并重新发送,从而有效解决信号衰减问题,为服务器、存储设备及硬件加速器等应用场景提供可扩展的高性能PCIe互联解决方案。

PCIe Redriver

Redriver是一种信号放大器,通过发射端的驱动器和接收端的滤波器提升信号强度,从而实现对信号损耗的补偿。

工作原理来看,Redriver通过放大信号来恢复数据,而Retimer 则重新建立一个传输信号的新副本。与 Redriver 相比,Retimer 恢复信号的效果更好,能够实现比Redriver更优的降低信道损耗效果,但由于增加了数据处理过程,时延有所增加。

PCIe Switch

PCIe 的链路通信是一种端对端的数据传输,每一条PCIe链路两端只能各连接一个设备,在需要高速数据传输和大量设备连接的场景中连接数量和速度受限。因此需要PCIe Switch提供扩展或聚合能力,从而允许更多的设备连接到一个 PCle 端口,以解决 PCIe 通道数量不够的问题。

wKgaomUt_s2AeGXIAAH3te8HijI776.png

PCIe Switch连接多条PCIe总线

PCIe Switch兼具连接、交换功能,具有低功耗、低延迟、高可靠性、高灵活性等优势,能够将多条PCIe总线连接在一起,形成一个高速的PCIe互联网络,从而实现多设备通信。从PCIe Switch内部结构看,其由多个PCI-PCI桥接构成,实现从单条线到多条线的发散。PCIe Switch 芯片与其设备的通信协议都是 PCIe。

02NVLink:高速 GPU 互连

算力的提升不仅依靠单张GPU卡的性能提升,往往还需要多GPU卡组合。在多GPU系统内部,GPU间通信的带宽通常在数百GB/s以上,PCIe总线的数据传输速率容易成为瓶颈,且PCIe链路接口的串并转换会产生较大延时,影响GPU并行计算的效率和性能。

GPU发出的信号需要先传递到PCIe Switch, PCIe Switch中涉及到数据的处理,CPU会对数据进行分发调度,这些都会引入额外的网络延迟,限制了系统性能。

wKgZomUt_s2AHGRJAAFIhOBGtRw150.png

为此,NVIDIA推出了能够提升GPU通信性能的技术——GPUDirect P2P技术,使GPU可以通过PCI Express直接访问目标GPU的显存,避免了通过拷贝到CPU host memory作为中转,大大降低了数据交换的延迟,但受限于PCI Express总线协议以及拓扑结构的一些限制,无法做到更高的带宽。此后,NVIDIA提出了NVLink总线协议。

NVLink的演进

NVLink 是一种高速互连技术,旨在加快 CPU 与 GPU、GPU 与 GPU 之间的数据传输速度,提高系统性能。NVLink通过GPU之间的直接互联,可扩展服务器内的多GPU I/O,相较于传统PCIe总线可提供更高效、低延迟的互联解决方案。

NVLink的首个版本于2014年发布,首次引入了高速GPU互连。2016年发布的P100搭载了第一代NVLink,提供 160GB/s 的带宽,相当于当时 PCIe 3.0 x16 带宽的 5 倍。V100搭载的NVLink2将带宽提升到300GB/s ,A100搭载了NVLink3带宽为600GB/s。目前NVLink已迭代至第四代,可为多GPU系统配置提供高于以往1.5倍的带宽以及更强的可扩展性,H100中包含18条第四代NVLink链路,总带宽达到900 GB/s,是PCIe 5.0带宽的7倍。

wKgaomUt_s2AB2fGAADwJqa2b9U315.png

四代 NVLink 对比

目前已知的NVLink分两种,一种是桥接器的形式实现NVLink高速互联技术,另一种是在主板上集成了NVLink接口。

NVSwitch

为了解决GPU之间通讯不均衡问题,NVIDIA引入NVSwitch。NVSwitch芯片是一种类似交换机ASIC的物理芯片,通过NVLink接口可以将多个GPU高速互联到一起,可创建无缝、高带宽的多节点GPU集群,实现所有GPU在一个具有全带宽连接的集群中协同工作,从而提升服务器内部多个GPU之间的通讯效率和带宽。NVLink和NVSwitch的结合使NVIDIA得以高效地将AI性能扩展到多个GPU。

wKgZomUt_s2AD-41AAQ4HXkLf2E119.png

NVSwitch 拓扑图

第一代 NVSwitch于2018年发布,采用台积电 12nmFinFET 工艺制造,共有 18 个 NVLink 2.0 接口。目前 NVSwitch 已经迭代至第三代。第三代 NVSwitch 采用 TSMC 4N 工艺构建,每个 NVSwitch 芯片上拥有 64 个 NVLink 4.0 端口,GPU 间通信速率可达 900GB/s。

wKgaomUt_s2ABFFyAADTgjKsFrY636.png

三代 NVSwitch 性能对比

2023 年 5 月 29 日,NVIDIA推出的DGX GH200 AI超级计算机,采用NVLink以及 NVLink Switch System 将256个GH200 超级芯片相连,把所有GPU作为一个整体协同运行。DGX GH200 是第一台突破 NVLink 上 GPU 可访问内存 100 TB 障碍的超级计算机。

03AI时代下的网络互联

在逐步迈向AI时代网络互联的过程中,该选择PCIe还是NVLink?我们可以先看下NVIDIA 的NVLink版(SXM版)与PCIe版GPU的区别。

SXM架构是一种高带宽插座式解决方案,用于将 GPU连接到NVIDIA 专有的 DGX 和 HGX 系统。SXM 版GPU通过 NVSwitch 芯片互联,GPU 之间交换数据采用NVLink,未阉割的A100是600GB/s、H100是900GB/s,阉割过的A800、H800为400GB/s。PCIe版只有成对的 GPU 通过 NVLink Bridge 连接,通过 PCIe 通道进行数据通信。最新的PCIe只有128GB/s。

wKgZomUt_s2AVKo5AAToEP-QVGA593.png

AI /HPC的计算需求不断增长,因此越来越需要在 GPU 之间提供更大的互联带宽。总的来说,NVLink的传输速度与时延都要优于PCIe,PCIe的带宽已逐渐无法满足AI时代数据互联的需求。但PCIe作为通用标准的互联技术,可广泛应用于各种场景,而NVLink为NVIDIA专有,是NVIDIA AI帝国的护城河,其他企业只能采用PCIe或者别的互联协议。

像谷歌是通过自研的OCS(Optical Circuit Switch)技术实现TPU之间的互联,解决TPU的扩展性问题。谷歌还自研了一款光路开关芯片Palomar,通过该芯片可实现光互联拓扑的灵活配置。也就是说,TPU芯片之间的互联拓扑并非一成不变,可以根据机器学习的具体模型来改变拓扑,提升计算性能及可靠性。借助OCS技术,可以将4096个TPU v4组成一台超级计算机。

据称,目前国外AI芯片初创公司Enfabrica和国内某些企业正沿着PCIe/CXL Switch方向在努力,结合CXL协议规范和PCIe接口的通用性,打造CPU-CPU直连交换芯片和系统方案。近期,NVIDIA还对Enfabrica进行了投资。有分析师表示,Enfabrica完全具备作为NVIDIA竞争对手的潜力,未来NVIDIA可能会考虑收购这家初创公司。

市场发展瞬息万变,未来具体将如何演变不仅取决于技术创新,也取决于市场需求和行业合作。在这个不断演变的AI网络互联时代,企业如何抉择将取决于自身对性能、成本、应用场景和未来发展趋势等多重因素的考量。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 服务器
    +关注

    关注

    12

    文章

    9123

    浏览量

    85322
  • 总线
    +关注

    关注

    10

    文章

    2878

    浏览量

    88051
  • 数据中心
    +关注

    关注

    16

    文章

    4761

    浏览量

    72033
  • AI
    AI
    +关注

    关注

    87

    文章

    30728

    浏览量

    268885
  • PCIe
    +关注

    关注

    15

    文章

    1234

    浏览量

    82578

原文标题:AI网络互联,PCIe还是NVLink?

文章出处:【微信号:SDNLAB,微信公众号:SDNLAB】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    详解Zynq的两种启动模式

    Zynq-7000AP SOC器件有效利用了片上CPU来帮忙配置,在没有外部JTAG的情况下,处理系统(PS)与可编程逻辑(PL)都必须依靠PS来完成芯片的初始化配置。 ZYNQ的两种启动模式:从BootROM主动启动,从JTAG被动启动。
    发表于 08-02 09:33 1491次阅读
    <b class='flag-5'>详解</b>Zynq的<b class='flag-5'>两种</b>启动模式

    两种典型的ADRC算法介绍

    前言  上篇中详细阐述了经典的自抗扰控制算法的原理,本篇将围绕两种ADRC算法展开,针对扩张状态观测器的参数整定问题进行详解,同时,对跟踪微分器的几个重要应用进行介绍。两种典型的ADRC算法  自抗
    发表于 09-07 08:02

    SQL语言的两种使用方式

    编写)-DBMS预处理程序-预处理过的源程序(嵌入的SQL语句已转换成函数调用形式)-宿主语言编译程序(SQL函数定义库)-目标程序嵌入式SQL涉及到SQL语句在主语言程序中的使用规定,以解决两种语言的不一致和相互联系的问题。...
    发表于 12-20 06:51

    英伟达GPU卡多卡互联NVLink,系统累积的公差,是怎么解决的?是连接器吸收的?

    英伟达不断推出GPU卡,并且实现多卡互联NVLink,实际整个系统会累积到一个较大的公差,而目前市面上已有的连接器只能吸收较少的公差,这个是怎么做到匹配的呢?
    发表于 03-05 16:17

    PCIe两种中断传递方式

    MSI/MSI-X是后续的PCI/PCI-X总线改进后的中断机制,其中MSI-X(MSI-eXtented)是PCI-X中提出的升级版本。需要特别注意的是,MSI/MSI-X与PCIe总线中的消息(Message)的概念完全不同!MSI/MSI-X本质上是一Posted
    的头像 发表于 08-31 15:31 9239次阅读

    PCIe总线的两种复位方式

    传统的复位方式分为Cold、Warm和Hot Reset。PCIe设备可以根据当前的设备的运行状态选择合适的复位方式,PCIe总线提供多种复位方式的主要原因是减小PCIe设备的复位延时。
    的头像 发表于 12-30 09:37 2.3w次阅读

    关于两种无线传输技术WIHD和WIDI

    今天我们来说一下WIHD和WIDI两种无线传输技术,WIHD是WIrelessHD的简称,采用60GHz的高频频段60GHz”毫米波”技术进行无线传输的一传输规范。
    发表于 07-12 11:49 2420次阅读

    PCIe错误报告的两种机制详解

    该机制是PCIe设备必需支持的一错误报告机制,同时设备会定义最小的错误报告请求。应该是通过配置Device Control和Command寄存器做到通知其他设备产生了错误的一机制。
    的头像 发表于 10-23 11:14 2.6w次阅读
    <b class='flag-5'>PCIe</b>错误报告的<b class='flag-5'>两种</b>机制<b class='flag-5'>详解</b>

    FORESEE SSD研发团队推出支持两种加密功能的P709 PCIe SSD

    为了满足市场对SSD安全性和可靠性的需求,FORESEE SSD研发团队推出了这款能够分别支持TCG-OPAL 2.0与Pyrite 2.0两种加密功能的P709 PCIe SSD,以此保障用户数据安全,从而避免出现数据泄露的情况。
    的头像 发表于 08-24 17:03 2268次阅读

    详解PMSM中常用的两种坐标变换

    期介绍了Clarke的Park变化的基本原理,但是经过这两种变换后会存在两种系数,相信大家都很迷惑,这是什么原因? 主要原因是存在两种遵循的方式:1、变换前后电流所产生的旋转磁场等
    的头像 发表于 01-19 15:52 2456次阅读
    <b class='flag-5'>详解</b>PMSM中常用的<b class='flag-5'>两种</b>坐标变换

    NVLink的演进

    2014年,NVLink 1.0发布,并应用在P100芯片上,如下图所示。颗GPU之间有4条NVlink, 每个link中包含8个lane, 每条lane的速率是20Gb/s, 因此整个系统的双向带宽为160GB/s,是
    的头像 发表于 10-11 15:32 2259次阅读
    <b class='flag-5'>NVLink</b>的演进

    Micro OLED和Micro LED两种显示技术有哪些不同?

    Micro OLED和Micro LED两种显示技术有哪些不同? Micro OLED和Micro LED是两种不同的显示技术,它们在构造、工作原理以及应用领域等方面存在一些明显的区别
    的头像 发表于 12-11 14:26 6863次阅读

    英伟达AI服务器NVLink版与PCIe版有何区别?又如何选择呢?

    在人工智能领域,英伟达作为行业领军者,推出了两种主要的GPU版本供AI服务器选择——NVLink版(实为SXM版)与PCIe版。这者有何本质区别?又该如何根据应用场景做出最佳选择呢?
    的头像 发表于 03-19 11:21 5486次阅读
    英伟达AI服务器<b class='flag-5'>NVLink</b>版与<b class='flag-5'>PCIe</b>版有何区别?又如何选择呢?

    NVLink的演进:从内部互联到超级网络

    NVLink是NVIDIA开发的一高速、低延迟的互联技术,旨在连接多个GPU以实现高性能并行计算。与传统的PCIe总线相比,
    的头像 发表于 04-13 11:22 1122次阅读
    <b class='flag-5'>NVLink</b>的演进:从内部<b class='flag-5'>互联</b>到超级网络

    全面解读英伟达NVLink技术

    NVLink是一解决服务器内GPU之间通信限制的协议。与传统的PCIe交换机不同,NVLink带宽有限,可以在服务器内的GPU之间实现高速直接互连。第四代
    发表于 04-22 11:01 1307次阅读
    全面解读英伟达<b class='flag-5'>NVLink</b><b class='flag-5'>技术</b>