NVLink 前世今生:GPU互联的江湖传奇

151 阅读8分钟

“当模型越来越大,显卡也开始急着串门了。”

一、引言:显卡之间的“交通堵塞”

在这个 AI 横扫江湖的年代,无论是 ChatGPT、Midjourney,还是你家猫咪都能跑个图像识别模型的时代,GPU 已经从原来的“游戏猛男”变成了“AI 工地上的钢铁侠”。

可别小看了这些 GPU 之间的“闲聊”。当你跑个大模型的时候,显卡之间得像工地上的搬砖工一样,时刻交流、分工合作。一个不小心数据晚了几毫秒,整个训练速度都慢得像老太太过马路。

这时候就得提一个让老工程师都挠头的问题了:

“显卡之间说句话,为什么要先告诉 CPU,再去内存绕一圈?”

这不就是“我在客厅跟我弟说句话,还得打个电话给我妈,让她转告厨房的他”吗?那效率能高就怪了。

于是,NVIDIA 拿出自家“黑科技”NVLink,把显卡之间的“村道”改成了“高铁线”。故事就从这里开始了。

二、在 NVLink 出现之前,GPU 是怎么“社交”的?

1. PCIe:原始社交网络

在 NVLink 横空出世之前,GPU 之间的主要通信方式是 PCI Express(简称 PCIe)。这玩意儿就像一条市政大道,CPU、GPU、声卡、网卡、洗衣机(啊不是)都得通过它来互通有无。

问题是,这条“市政大道”带宽有限,就像一条四车道高速却要跑满卡车、公交和外卖骑手。你以为跑得快,结果到处堵车。

PCIe 的特点是典型的“星型结构”:所有设备都围绕着 CPU,这种结构就像公司里所有员工都要通过老板才能联系彼此。

想象一下,小李要给小王发个文件,还得先让老板小张签字,然后走公司服务器上传下载。是的,这就是 PCIe 模型的“特色”。

2. 多 GPU 通信的“社死现场”

随着深度学习大行其道,单个 GPU 的算力已经不够用了。于是工程师们开始堆显卡,什么双卡交火、四卡联动、八卡 DGX……拼的不是装备,是勇气。

但问题来了:

  • 多 GPU 训练时,显卡之间要频繁同步数据;
  • 数据必须先绕道 CPU 和系统内存;
  • 带宽低、延迟高、效率堪忧。

这就像你在楼下开奶茶店,原材料却要从楼上仓库走楼梯搬下来,一趟又一趟。你问我为什么不修电梯?很遗憾,PCIe 就是不让你装。

三、NVLink 是什么?显卡专属的“高速铁路局”

NVLink,是 NVIDIA 为了解决 GPU 之间“话太难说”的问题,亲自操刀设计的一套高速互联技术。简单来说,就是在多个 GPU 之间修一条专属的“高速铁路”,绕开 PCIe 那条拥堵的老路,让显卡之间实现心灵感应般的数据传输。

如果说 PCIe 是公交系统,那 NVLink 就是你专属的定制高铁,点对点、低延迟、高带宽,还配头等座。

1. NVLink 的技术亮点

  • 带宽高得离谱:单条 NVLink 通道最初就有 20GB/s 的传输速率(现在甚至更高),而 PCIe 3.0 x16 的理论带宽也才 16GB/s,NVLink 一下就是两倍起步。
  • 低延迟通信:因为是点对点链接,数据无需经由 CPU 或系统内存中转,传输延迟大幅下降。
  • 内存共享:NVLink 还允许多块 GPU 共享彼此的显存,这就像两家饭馆把厨房打通了,炒菜可以互相借锅借菜,效率大大提升。

2. NVLink vs PCIe:到底快在哪?

特性PCIe 3.0 x16NVLink 1.0
带宽~16 GB/s~20 GB/s/通道
通信结构星型(靠 CPU 中转)点对点直连
延迟
GPU 显存访问不能直接共享支持互访

一句话总结:NVLink 就是 GPU 世界里的“专车直达”,甩掉了 PCIe 的“转车烦恼”。


四、NVLink 的发展史:从 1.0 到 NVSwitch

科技的发展就像武功修炼,NVLink 也从一个初出茅庐的小侠客,练成了纵横江湖的绝世高手。让我们看看它的进化史:

1. NVLink 1.0(2016)——“初代高铁”,用在 Pascal 架构(如 Tesla P100)

  • 带宽:每个 Link 提供 20 GB/s,单 GPU 最多支持 4 个 NVLink,最大总带宽 80 GB/s。
  • 用法:主要应用于超级计算机,比如 IBM 的 Power8 + P100 组合。

2. NVLink 2.0(2017)——“升级大巴”,搭载在 Volta 架构(如 Tesla V100)

  • 带宽飙升:每个 Link 提供 25 GB/s,单 GPU 可支持 6 个 Link,总带宽达 150 GB/s。
  • 功能增强:支持更深层次的显存访问,让 GPU “像一家人一样”共用厨房。

3. NVLink 3.0 & NVSwitch(2019)——多卡联动的“城际铁路枢纽”

  • 引入了 NVSwitch:一个超大“交换机”,让多块 GPU 之间全互连,避免瓶颈。
  • DGX 系列服务器采用它让 8 卡乃至更多 GPU 通信像“八卦阵”,全连接不绕路。

4. NVLink 4.0(2022 起,Hopper 架构)——未来高铁,直通 AI 大模型

  • 每个 Link 可提供超过 50 GB/s 的传输速率;
  • 总带宽达到 900 GB/s(是 PCIe x16 的 50 倍);
  • Hopper 架构为 AI 大模型量身打造的“信息高速路”。

五、NVLink 解决了什么问题?

咱们总结一下,NVLink 主要解决了以下“社交难题”:

1. 带宽不够用,训练等半天?

NVLink 提供超高带宽,堆卡跑大模型,不怕“喇叭口”堵车。

2. 延迟太高,GPU“说话”总卡壳?

点对点直连,显卡之间“耳语”无需绕 CPU,大大降低了延迟。

3. 显存不能共享,模型塞不下?

通过 NVLink,多张显卡可以互访显存,模型参数再大也能“拼桌吃饭”。

4. 扩展性差,四卡以上就鸡飞狗跳?

NVSwitch 提供全互联能力,8 卡、16 卡、32 卡,井然有序不掉线。

六、NVLink 的缺点:不是所有的高速公路都通向远方

虽然 NVLink 是一条“显卡间的高速铁路”,但它也不是完美无缺。任何技术都是一把双刃剑,NVLink 也有几个让人挠头的限制,咱们一个一个揭开来看看。

1. 距离短,属于“近战型选手”

NVLink 说白了是专为短距离高速通信设计的,也就是说显卡和显卡之间必须靠得很近,一般是在同一个主板上,甚至是“肩并肩贴贴”才行。

你要是妄图让两台机器的 GPU 用 NVLink 互联?那不行,线都够不着,NVLink 没这本事——它不是网线,是“显卡连体裤”。

类比一下:NVLink 就像两个人用耳语交流,必须靠得足够近。离远了?那就得用对讲机(Infiniband 或以太网)了。

2. 扩展性有限,离了 NVSwitch 就寸步难行

虽然 NVLink 可以搞点对点连接,但数量一多就得引入 NVSwitch,不然连接方式就像打结的耳机线一样复杂难理。

NVSwitch 虽好,但成本高、功耗高、体积大,这就决定了 NVLink 不适合大规模分布式系统,还是更偏重“单机多卡”场景。

3. 平台封闭,只能用在 NVIDIA 自家的设备上

NVLink 是 NVIDIA 自己家的技术,别家的显卡连接不了、想都别想。你 AMD 的 GPU?英特尔的 GPU?不好意思,请走 PCIe。

这就像苹果家的 Lightning 接口,优雅是优雅了,就是不通用。

4. 硬件要求高,普通用户用不上

NVLink 接口不是“插上就有”的,一般只存在于 NVIDIA 的专业级 GPU(如 A100、H100、V100、RTX A6000 等)和高端主板中。

游戏玩家别想了,GeForce 系列都已经取消 NVLink 支持(自 RTX 40 系列起)。连门票都没得买,还谈什么上车。

小结:优点是武林秘籍,缺点是修炼代价

缺点说明
传输距离短只能用于同一系统中,不能跨服务器通信
扩展性依赖 NVSwitch多卡互联需要额外硬件支持
封闭性强仅适用于 NVIDIA 自家生态
成本和功耗高非 DIY 用户难以接触

NVLink 是“高冷贵族型选手”,跑得快、交流爽,但“吃得多、圈子小、要求高”,用起来得有点家底。

七、结语:一条链子,串起 GPU 的大江湖

在 AI 大模型和高性能计算飞速发展的今天,GPU 不再是独行侠,而是要像跑团一样协同作战。NVLink 就是把这些 GPU “兄弟”串在一起的红绳子。

从最初的“村道串门”,到如今的“城际高铁”,NVLink 正在默默撑起 AI 世界的数据洪流。

所以,下次你听到“这卡有 NVLink 接口”,别以为那只是个花哨的槽点,那可是显卡社交圈里的 VIP 通道。

“连接一条线,沟通亿万神经元。”
——NVLink,GPU 世界里的“千里传音”。