今天小编分享的科技经验:NVLink,英伟达的另一张王牌,欢迎阅读。
美国商务部的口风越来越紧,逼得黄式刀法重出江湖:多方证实,英伟达即将推出三款特供版 GPU,由于出口管制,性能最强的 H20,相较 H100 算力也大幅缩水 80%。
算力被限制死,英伟达也只能在其他地方做文章。H20 的最大亮点落在带宽:
带宽达到与 H100 持平的 900G/s,为英伟达所有产品中最高。较 A100 的 600G/s,和另外两款特供芯片 A800 和 H800 的 400G/s 大幅提高。
阉割算力,提升带宽。看似割韭菜,实则含金量不低。
H20 踩着红线免受制裁
简单来说,带宽的大小决定了部門时间向 GPU 传输的数据总量。考虑到人工智能对数据吞吐能力病态的要求,如今衡量 GPU 的质量,带宽已经成为算力之外最重要的指标。
另一方面,云服务公司和大模型厂商不是只买几颗芯片,而是一次性采购几百上千张组成集群,芯片之间的数据传输效率也成了迫在眉睫的问题。
GPU 和 GPU 之间的数据传输问题,让英伟达在芯片算力、CUDA生态之外的另一张王牌浮出了水面:NVLink。
数据传输,算力的紧箍咒
要理解 NVLink 的重要性,首先要了解数据中心的工作原理。
我们平时玩游戏,一般只需要一块 CPU 加一块 GPU。但训练大模型,需要的是成百上千个 GPU 组成的 " 集群 "。
Inflection 曾宣称他们正在构建的 AI 集群,包含多达 22000 张 NVIDIA H100。按照马斯克的说法,GPT-5 的训练可能需要 3 万到 5 万张 H100,虽然被 Altman 否认,但也可以窥见大模型对 GPU 的消耗。
特斯拉自家的超算 Dojo ExaPod,就是由多个 Cabinet 机柜组成,每个机柜里有多个训练单元,每个训练单元都封装了 25 个 D1 芯片。一整台 ExaPod 包含 3000 个 D1 芯片。
但在这种计算集群中,会遇到一个严峻的问题:芯片彼此独立,如何解决芯片之间的数据传输问题?
特斯拉的超算 ExaPOD
计算集群执行任务,可以简单理解为 CPU 负责下达命令,GPU 负责计算。这个过程可以大概概括为:
GPU 先从 CPU 那里拿到数据—— CPU 发布命令,GPU 进行计算—— GPU 计算完成,将数据回传给 CPU。如此循环往复,直到 CPU 汇总所有计算结果。
数据一来一回,传输效率就至关重要。如果有多个 GPU,GPU 之间还要分配任务,这又涉及到数据的传输。
所以,假设一家公司买下 100 颗 H100 芯片,它拥有的算力并不是 100 颗芯片的算力简单相加,还要考虑到数据传输带来的损耗。
一直以来,数据传输的主流方案是的PCIe。2001 年,英特尔提出以 PCIe 取代过去的总线協定,联手 20 多家业内公司起草技术规范,英伟达也是受益者。但时至今日,PCIe 的缺点变得越来越明显。
一是数据传输效率被算力的提升远远甩在了后面。
从 2001 年到 2017 年,运算设备的算力提高了 5000 倍。同期,PCIe 迭代到 4.0,带宽(单通道)只从 250MB/s 提高到 2GB/s,提升只有 8 倍。
算力的传输之间的巨大落差,导致效率大幅降低。就像摆了一桌满汉全齐,餐具就给一个挖耳勺,怎么吃都不痛快。
二是人工智能暴露了PCIe的设计缺陷。
在 PCIe 的设计思路里,GPU 之间的数据传输都必须经过 CPU。换句话说就是 GPU1 想和 GPU2 交换数据,都得由 CPU 来分发。
这在以前不是什么问题,但人工智能主打一个大力出奇迹,计算集群里 GPU 数量迅速膨胀。如果每个 GPU 都要靠 CPU 传话,效率就大大降低了。用大家很熟悉的话来形容,就是 " 你一个人耽误一分钟,全班同学就浪费了一个小时 "。
大幅提高 PCIe 的带宽,不太符合英特尔挤牙膏上瘾的人设。大幅提高 CPU 的处理能力是个办法,但英特尔要是有这个本事,英伟达和 AMD 活不到今天。
于是,深感时不我待的英伟达动了另起炉灶的心思。
2010 年,英伟达推出 GPU Direct shared memory 技术,通过减少一次复制的步骤,加快了 GPU1-CPU-GPU2 的数据传输速度。
次年,英伟达又推出 GPU Direct P2P 技术,直接去掉了数据在 CPU 中转的步骤,进一步加快传输速度。
只是这些小幅度的技术改良,都基于 PCIe 方案。
和 CUDA 一样,PCIe 的竞争力在于生态。所谓 " 生态 ",核心就是 " 大家都在用你凭什么搞特殊 "。由于大多数设备都采用 PCIe 接口,就算英伟达想掀桌子,其他人也得掂量掂量兼容性问题。
轉捩點出现在 2016 年,AlphaGo 3:0 战胜李世石,GPU 一夜之间从荼毒青少年的游戏显卡变成了人工智能的科技明珠,英伟达终于可以光明正大的进村了。
NVLink,解开 PCIe 封印
2016 年 9 月,IBM 发布 Power 8 伺服器新版本,搭载英伟达 GPU:
两颗 Power 8 CPU 连接了 4 颗英伟达 P100 GPU,其中数据传输的纽带从 PCIe 换成了英伟达自研 NVLink,带宽高达 80G/s,通信速度提高了 5 倍,性能提升了 14%。
Power8+P100 架构
同时,NVLink 还实现了 GPU-GPU 之间的直接传输,不带 PCIe 玩了。
2017 年,基于 Power8+P100 的模型在 22K 的 ImageNet 数据集上实操了一把,识别准确率达到 33.8%,虽然准确率相比前一年只提高了 4%,但训练时间从 10 天大幅缩短到了 7 小时。
小试牛刀效果不错,老黄也不准备再装了。
从 2017 年的 Volta 架构开始,英伟达给每一代 GPU 都搭配了基于 NVLink 方案的 NVSwitch 芯片,用来处理 GPU 之间的数据传输。
NVLink 和 NVSwitch 的关系,可以简单理解为:NVLink 是一种技术方案,NVSwitch 和 NVLink交换机都是这种方案的载体。
目前最新的 DGX H100 伺服器中,每台伺服器拥有 8 个 H100 GPU、4 个 NVSwitch 芯片相互连接。
带有标注的 NVSwitch 芯片裸片
在 DGX H100 伺服器发布的同时,英伟达还发布了搭载两个 NVSwitch 芯片的 NVLink 交换机,用来处理 DGX H100 伺服器之间的数据传输。
也就是说,NVLink 不仅负责 DGX 伺服器内部 8 个 GPU 的连通,也负责整个伺服器之间每个 GPU 的数据传输。
按照英伟达的设计,一个 H100 SuperPOD 系统,会用到 32 台伺服器总共 256 个 H100 GPU,算力高达 1EFlops。每套系统搭配 18 台 NVlink 交换机,加起来就是 128 个 NVSwitch 芯片。
如上文所说,一个集群的算力并不是每个GPU算力的简单相加,伺服器间的数据传输效率是主要的制约因素。当集群的规模越来越大,NVLink的重要性也就越来越强。
NVLink 渐成气候,老黄的野心也逐渐成型:和 PCIe 拉帮结派搞生态不同,NVLink 必须绑定英伟达的芯片使用。当然,考虑到 PCIe 的既定生态,H100 系列中也有多个支持 PCIe 的版本。
为了扩张自己的势力范围,英伟达还推出了基于 Arm 架构的 Grace 伺服器 CPU,用英伟达的 CPU+ 英伟达的 GPU+ 英伟达的互联方案,捆绑在一起,统一数据中心市场。
有了这一层铺垫,就不难理解 H20 的杀伤力。
虽然算力被砍了一大截,应付不了大参数的模型训练,但 H20 本身的高带宽和 NVLink 的加持,可以组成更大的集群,在一些小参数模型的训练和推理上,反而更具性价比。
在英伟达的示范下,AI的内卷也算力转向了互联技术。
互联,AI 芯片的下半场
2023 年 11 月,AMD 发布预告已久的 MI300 系列,直接对标英伟达 H100。
发布会上,除了例行的纸面算力比较外,Lisa Su 重点强调了 MI300 带宽上的遥遥领先:MI300X 带宽高达 5.2TB/s,比 H100 还要高 1.6 倍。
这是实话,不过得先挤挤水分。
Lisa Su 用来与 MI300X 比较的是 H100 SXM 版,但性能更高的 H100 NVL 版通过 NVLink 集成两颗 GPU 带宽达到 7.8TB/s,仍高于 MI300X 的。
但这足见 AMD 对带宽的重视程度,以及 AI 芯片竞争的新焦点:互联技术。
英伟达发布 NVLink 的几个月后,AMD 就推出了高速互联技术 Infinity Fabric,提供 CPU-CPU 之间最高到 512GB/s 的带宽,后又扩展到 GPU-GPU、CPU-GPU 互联。
看着两大竞争对手甩开带宽的包袱放飞自我,英特尔作为 PCIe 的带头大哥,自然心情复杂。
2019 年,英特尔联手戴尔、惠普等推出新的互联标准 CXL,本质与 NVLink 和 Inifinity Fabric 一样,都是为了摆脱带宽掣肘,2.0 标准最高带宽可达到 32GT/s。
英特尔的心机在于,由于 CXL 是基于 PCIe 扩展的,因此和 PCIe 接口兼容。也就是说,过去用 PCIe 接口的设备可以 " 无痛 " 改用 CXL,生态大法又立了大功。
芯片巨头围绕互联技术斗得正欢,转而自研芯片的AI大厂,也在解决互联问题。
谷歌在自家 TPU 上采用了自研的光电路交换机技术(OCS),甚至还自研了光路开关芯片 Palomar,只为了提高数据中心里几千颗 TPU 之间的通信速度。特斯拉也自己开发了通信協定,处理 Dojo 内部的数据传输。
回到本文开头,也正是这种差距,才让 NVLink 成为了英伟达的新 " 刀法 "。
大模型所需的算力,并非国产 AI 芯片不可触及,但数据传输技术瘸腿依然会造成不可忽视的成本问题。
举一个不太严谨的例子,来帮助大家理解这个问题:
假设 H20 和国产 AI 芯片的单价都是 1 万元,一颗 H20 提供的算力是 1,国产芯片提供的算力是 2,但考虑到集群规模带来的算力损耗,由于 NVLink 的存在,H20 的损耗是 20%,国产芯片是 50%,那么一个算力需求 100 的数据中心,需要 125 颗 H20 或是 200 颗国产芯片。
在成本上,就是 125 万和 200 万的差距。
模型规模越大,数据中心所需的芯片越多,成本的差距就越大。要是黄仁勋狠狠心,刀法再犀利些,或许还可以卖出更低的价格。如果你是国内 AIGC 厂商的采购总监,你怎么选?
互联技术上的弱势,创造了英伟达的另一张王牌。
按照当前的消息,原本 11 月发布的 H20 已经延后到明年第一季度,接受预定、出货时间也将顺势延后。延迟发布的原因并不确切,但在 H20 正式开售前,留给国产芯片的机会視窗,已经在倒计时了。
英伟达的伟大在于,它以高度的前瞻性,几乎以一己之力开辟了一条人工智能的高速公路。
而它的成功在于,黄仁勋在每一个你可能经过的车道,都提前修好了收费站。