随着人工智能的不断演进,GPU在高性能计算和深度学习中扮演着越来越重要的角色, GPU强大的并行计算能力,大大提升了运算性能。在运算数据量不断攀升下,GPU间需要进行大量数据交换,GPU通信性能成为了非常重要的指标。

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

NVLink究竟是个啥?_数据交换

PCI Express现状

目前​PCIe 4.0协议​,相较PCIe 3.0已实现带宽翻倍,​x16双向带宽达到了64GB/s​,而搭载HBM2e显存的NVIDIA A100带宽已可达到​1935GB/s​。显卡核心和显存之间的数据交换通道已经达到如此带宽,​但是​GPU​之间以及​GPU​和​CPU​之间的数据交换受到PCIe总线影响,成为了瓶颈​。

NVLink究竟是个啥?_数据交换_02

NVLink

为解决PCI Express下的瓶颈,NVIDIA推出了NVLink,​可提供更高带宽和更多链路,并可提升多GPU系统配置的可扩展性​,有效解决互连问题。于2016年发布的P100是搭载NVLink的第一款产品,具有​160 GB/s​的带宽,相当于​PCIe Gen3*16带宽的5倍​。GTC 2017上发布的V100搭载NVLink 2.0,更是将带宽提升到了​300 GB/s​,差不多达到了​PCIe Gen4*16带宽的5倍​。而在去年GTC 20中最新发布的NVIDIA A100更是搭载了​NVLink 3.0​,单个NVIDIA A100 Tensor核心GPU支持多达12个第三代NVLink连接,​总带宽为每秒600 GB/s,几乎是PCIe Gen 4带宽的10倍。

NVLink究竟是个啥?_NvLink_03

NVLink Bridge

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

              NVLink究竟是个啥?_人工智能_04          

但目前集成NVLink接口的主板极为少数,PCIe仍为主流平台的标配。​为使NVLink得到更广泛应用,加速应用程序的运行效率,NVIDIA推出了可通过NVLink技术连接两片高性能GPU的​NVLink Bridge​,其能实现显存扩展和性能增强,满足人工智能下的超大负载需求。

此前,只有Geforce、Titan及Quadro系列中的部分产品支持NVLink Bridge,​但全新Ampere下的A100(PCIe版本)、A40、A30、A6000、A5000均已实现NVLink Bridge的支持。​在NVLink 3.0技术支持下,A100(PCIe版本)可实现​600 GB/s GPU-GPU带宽​,A30可实现​200 GB/s GPU-GPU带宽​,其余则可实现​112 GB/s GPU-GPU带宽,大大降低了数据交互的延迟,助力更多端到端计算平台的构建。

说明:本篇文章转载别处,是笔者学习参考用的,如有侵权请联系我进行删除。希望本次转载也能对大家的学习带来帮助。