引言
NVIDIA NVLink 是一种关键的高速互连技术,专为加速计算而设计,尤其是在多 GPU 系统以及 GPU 和支持 CPU 之间 ^1^。NVLink 的出现标志着传统互连瓶颈的突破,凸显了现代计算工作负载日益增长的需求。与通用性 PCIe 相比,NVLink 专为满足高性能计算和人工智能领域中紧密耦合的 GPU 所需的大规模数据交换而设计。这项技术对于充分发挥百亿亿次级计算的潜力以及训练万亿参数人工智能模型至关重要 ^4^。本深度分析报告旨在全面探讨 NVIDIA NVLink,涵盖其定义、演进、技术规格、应用和未来趋势。
NVIDIA NVLink 的基本原理
NVLink 是 NVIDIA 开发的一种专有的、基于导线的串行多通道近距离通信链路 ^2^。它能够促进跨多个 NVIDIA GPU 和支持 CPU 的连贯数据和控制传输 ^1^。NVLink 采用点对点连接和高速信令互连 (NVHS) ^2^。NVLink 的专有性质使得 NVIDIA 能够针对其 GPU 架构对其进行专门定制,从而实现开放标准可能无法实现的优化。然而,这也使得用户对 NVIDIA 的生态系统产生了一定的依赖性。
与传统的互连技术(如 PCI Express (PCIe))相比,NVLink 具有显著的优势 ^2^。例如,第五代 NVLink 提供的带宽是 PCIe Gen5 的 14 倍以上 ^4^。NVLink 由于采用直接 GPU 到 GPU 的通信路径,减少了 PCIe 交换机和 CPU 参与所带来的开销,因此具有更低的延迟 ^5^。此外,NVLink 在 GPU 到 GPU 通信中采用网状网络,而不是像 PCIe 那样的中央集线器 ^2^。带宽和延迟方面的巨大优势使得 NVLink 成为需要快速数据交换的苛刻多 GPU 工作负载的首选互连技术。与作为通用互连的 PCIe 相比,NVLink 的设计针对直接 GPU 到 GPU 通信进行了优化,绕过了这些瓶颈,从而在并行处理任务中实现了显著的性能提升。
NVLink 在实现高速数据和控制传输方面具有以下关键优势 ^1^:它促进了 GPU 之间更快的数据传输,从而加速了并行计算环境中的处理速度 ^6^。NVLink 还使 GPU 能够共享内存,从而创建一个统一的内存池,以更有效地利用资源 ^4^。值得注意的是,NVLink 本身并不直接进行内存池化,而是为应用程序实现此功能提供了必要的高速连接 ^20^。此外,NVLink 减少了 CPU 在 GPU 到 GPU 通信中的干预需求,进一步降低了延迟 ^10^。与 PCIe Gen5 相比,NVLink 还具有更好的能源效率 ^7^。
各代产品的演进和技术规格
NVLink 经历了多次迭代,每一代都带来了显著的改进,以满足加速计算不断增长的需求 ^2^。
NVLink 各代规格总结
代数 | 发布年份 | 每通道信令速率 (GT/s) | 每链路通道数 (单向) | 每链路双向带宽 (GB/s) | 每个芯片的链路数 (示例 GPU) | 每个芯片的总双向带宽 (GB/s) | 支持的架构 | 关键特性 |
---|---|---|---|---|---|---|---|---|
1.0 | 2014 | 20 | 8 | 40 | 4 (P100) | 160 | Pascal | 最初版本 |
2.0 | 2017 | 25 | 8 | 50 | 6 (V100) | 300 | Volta | 缓存一致性,NVSwitch 1.0 |
3.0 | 2020 | 50 | 4 | 50 | 12 (A100) | 600 | Ampere | NVSwitch 端口增加到 36 |
4.0 | 2022 | 100 (PAM4) | 2 | 50 | 18 (H100) | 900 | Hopper,Grace CPU | NVSwitch 3.0,SHARP 协议 |
5.0 | 2024 | 200 (PAM4) | 4 | 200 | 18 (B200) | 1800 | Blackwell | NVLink 5 Switch,72 GPU 域 |
NVLink Switch 的作用
NVLink Switch 是一种物理芯片(类似于交换机 ASIC),它通过高速 NVLink 接口连接多个 GPU ^4^。它提高了服务器内部和机架之间的通信和带宽 ^4^,并支持以全 NVLink 速度进行所有 GPU 之间的通信 ^4^。NVLink Switch 对于将 NVLink 扩展到少量直接连接的 GPU 之外至关重要,它使得创建大型统一的 GPU 计算资源成为可能。如果没有交换机,可以直接相互通信的 GPU 数量会受到每个 GPU 上 NVLink 端口数量的限制。NVLink Switch 充当中央枢纽,允许系统中的任何 GPU 以高速与任何其他 GPU 通信,从而克服了这一限制并实现了更大更强大的系统。
不同代的 NVSwitch 具有不同的功能:NVSwitch 1.0(随 Volta V100 推出)具有 18 个端口,每个端口 50 GB/s 的带宽,总带宽为 900 GB/s ^23^;NVSwitch 2.0(随 Ampere A100 推出)具有 36 个端口,每个端口 50 GB/s 的带宽 ^26^;NVSwitch 3.0(随 Hopper H100 推出)具有 64 个 NVLink4 端口,双向带宽为 3.2 TB/s,并集成了 SHARP 协议 ^5^;NVLink 5 Switch(随 Blackwell GB200 推出)具有 144 个 NVLink 端口,无阻塞交换容量为 14.4 TB/s ^4^。每一代 NVSwitch 都显著增加了端口数量和整体交换容量,这与 NVLink 带宽的进步以及对更大型多 GPU 系统的需求直接相关。SHARP 等特性的集成凸显了这些互连结构日益增长的复杂性。
NVLink Switch 对大规模部署中的带宽和延迟产生了重大影响 ^4^。它使得在服务器内部和服务器之间创建 NVLink 网络成为可能,从而形成了数据中心规模的 GPU ^4^。通过 SHARP 等特性,它为集体操作提供了高带宽和低延迟 ^4^。NVLink Switch 对于快速多 GPU 推理至关重要,尤其对于大型语言模型,它提供了高互连带宽并实现了高效的数据交换 ^21^。NVLink Switch 是 NVLink 可扩展性的关键推动因素,使其能够扩展到单个服务器之外,形成对于应对最苛刻计算挑战至关重要的大规模互连 GPU 集群。通过提供高速低延迟的交换结构,NVLink Switch 允许聚合来自多个服务器的 GPU 的计算能力。这种能力对于实现百亿亿次级计算所需的性能以及训练和部署极其庞大的人工智能模型至关重要。
NVIDIA NVLink 的应用
NVIDIA NVLink 在各种领域都有广泛的应用:
NVLink-C2C (芯片到芯片互连)
NVLink-C2C 是 NVLink 技术的扩展,用于在单个封装内或跨多个封装的芯片之间进行连贯互连 ^4^。它使用小芯片技术将 NVIDIA GPU、DPU 和 CPU(如 Grace)与定制硅连接起来 ^7^。NVLink-C2C 用于 NVIDIA Grace Hopper Superchip 和 Grace CPU Superchip ^7^,也用于 NVIDIA GB200 Superchip,将 Blackwell GPU 和 Grace CPU 结合在一起 ^4^。NVLink-C2C 代表了 NVIDIA 互连策略的进一步发展,它实现了系统中不同处理单元之间更紧密的集成,以最大限度地提高性能和效率。随着工作负载变得更加异构,需要 CPU、GPU 和 DPU 的组合优势,芯片级的高带宽、低延迟互连变得至关重要。NVLink-C2C 促进了这种紧密耦合,允许不同类型处理器之间进行连贯的内存访问和更快的通信。
NVLink-C2C 的优势包括:用于连贯数据传输的高带宽 ^22^;用于快速同步和对共享数据进行高频更新的低延迟 ^22^;与 NVIDIA 芯片上的 PCIe 相比,具有更高的能源和面积效率 ^7^;支持 Arm 的 AMBA CHI 和 Compute Express Link (CXL) 等行业标准协议,以实现互操作性 ^22^。NVLink-C2C 不仅提高了性能,而且还关注功耗和面积效率,这对于构建高密度、节能的计算系统至关重要。对行业标准的支持表明,在异构计算环境中,NVIDIA 的技术正朝着更大的互操作性发展。通过优化芯片到芯片的互连,NVIDIA 可以创建更强大、更高效的集成处理器。提高的能源和面积效率允许在相同的空间内封装更多的计算能力,同时降低功耗。支持行业标准确保 NVIDIA 的技术可以与系统中的其他组件无缝协作。
NVLink 与其他互连技术的比较
NVLink 与 PCIe 之间的详细比较 ^2^:重申“基本原理”部分讨论的带宽、延迟、可扩展性和设计目标方面的关键差异。强调 NVLink 针对 GPU 到 GPU 和 GPU 到 CPU(在特定架构中)的通信进行了优化,而 PCIe 是一种更通用的接口,用于连接各种外围设备 ^2^。NVLink 和 PCIe 之间的选择在很大程度上取决于具体的应用需求。对于多 GPU 加速计算,NVLink 提供了显著的优势,而 PCIe 仍然是更广泛系统连接的标准。理解每种互连技术的独特优势和劣势对于系统架构师至关重要。NVLink 的高带宽和低延迟使其非常适合紧密耦合的 GPU 工作负载,而 PCIe 的多功能性和广泛采用使其适用于更广泛的应用。
讨论 NVLink 相对于其他高速互连技术(如 InfiniBand)的地位 ^5^:InfiniBand 是一种用于 HPC 和数据中心的开放标准网络技术,为互连计算节点和 I/O 设备提供高带宽和低延迟 ^5^。NVLink 主要用于服务器内部的多 GPU 通信,而 InfiniBand 用于构建大规模集群的节点间通信 ^5^。利用 NVSwitch 的 NVLink 网络可以将 NVLink 连接扩展到节点之间,模糊了服务器内部和服务器之间通信的界限 ^4^。通常,在大型系统中采用混合方法,使用 NVLink 进行机架内 GPU 通信,而使用 InfiniBand(或基于以太网的 RoCE)进行机架间通信 ^5^。虽然 NVLink 和 InfiniBand 都解决了对高速低延迟互连的需求,但它们是为不同的规模和目的而设计的。NVLink 在紧密耦合服务器内部的 GPU 方面表现出色,而 InfiniBand 更适合构建大型分布式计算环境。然而,NVIDIA 在 NVLink 网络方面的进步正在扩大其覆盖范围。对于需要单个服务器内大规模并行处理的应用,NVLink 提供了最有效的解决方案。对于扩展到数百或数千个节点,InfiniBand 提供了一种成熟且广泛采用的技术。NVLink 网络的出现表明了 NVIDIA 旨在提供跨不同规模的更统一的互连解决方案。
未来趋势与分析
NVLink 将继续发展,具有更高的带宽能力(例如,NVLink 5.0 及更高版本),以满足 AI 和 HPC 不断增长的需求 ^4^。预计 Vera Rubin 等未来几代产品将进一步提高 NVLink 的速度 ^53^。NVSwitch 技术的进步将带来更大的可扩展性选项,从而实现包含数百甚至数千个 GPU 的更大 NVLink 域 ^4^。NVLink Switch 有望在单个 NVLink 域中扩展到 576 个 GPU ^4^。它还可能与 CXL 等其他互连技术融合或集成,以支持异构计算架构 ^22^。未来的 NVLink 设计将侧重于提高能源效率和降低功耗 ^4^。NVLink 在 AI 领域具有战略重要性,并在维持 NVIDIA 的竞争优势方面发挥着关键作用 ^21^。NVLink 的未来与 GPU 技术的进步以及 AI 和 HPC 不断变化的需求紧密相关。我们可以预期在更高的带宽、更大的可扩展性和更高的效率方面将持续推进,并可能与其他互连标准更紧密地集成,以创建更通用、更强大的计算平台。随着 AI 模型规模和复杂性的增长,以及 HPC 工作负载需要越来越高的计算能力,对更快、更可扩展的互连的需求只会增加。NVIDIA 对 NVLink 和 NVSwitch 的持续投资表明了其致力于解决这些挑战并保持其在加速计算市场领导地位的决心。与 CXL 等技术的潜在集成表明,未来不同类型的处理器和内存可以更无缝、更高效地互连。
结论
NVIDIA NVLink 的主要优势在于其高带宽、低延迟和可扩展性,这使其成为加速计算的关键技术。它在高性能计算、人工智能和数据科学领域的突破性进展中具有重要意义。NVLink 在提升现代计算系统的能力方面发挥着至关重要的作用,并将继续发展以应对未来计算挑战的需求。
审核编辑 黄宇
免责声明:本文为转载,非本网原创内容,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如有疑问请发送邮件至:bangqikeconnect@gmail.com