芯东西(ID:aichip001)文 | 心缘
芯东西5月28日报道,两周前,英伟达(NVIDIA)厨房里的发布会吸引了全球AI领域的目光。联合创始人兼CEO黄仁勋对着一张砧板,密集释放一系列硬核新品。

最强GPU、最强AI系统、比肩世界最强超算的AI集群、从嵌入式到边缘服务器的边缘AI产品……不愧是“财大气粗”又“技多不压身”的AI芯片霸主,这么多重磅产品一次性全部抛出,换作是其他公司,估计够开十场发布会了。而这些性能彪悍的AI黑科技背后,核心功臣正是NVIDIA第八代GPU架构——安培(Ampere)。
昨日,我们远程连线NVIDIA GPU工程高级副总裁Jonah Alben、NVIDIA加速计算产品管理总监Paresh Kharya,进一步加深对NVIDIA全新安培GPU架构完整面貌的理解。
在此,我们将基于83页的《NVIDIA A100 Tensor Core GPU Architecture》白皮书及采访信息,提炼安培GPU架构在计算和内存层次结构的关键创新与改进,深度解析这一全新架构怎样实现NVIDIA迄今为止最大的性能飞跃。

▲A100在计算和内存结构上的创新与提升一、三年一剑!“安培”出鞘
从NVIDIA计算架构的进化历程来看,NVIDIA计算卡的迭代时间并没有很固定。

▲NVIDIA计算卡进化历程
M40 GPU与K40间隔两年,P100与M40间隔半年,V100与P100间隔一年,A100又与V100间隔三年。“憋”了三年的大招一出场,果然不同凡响,新A100 GPU、AI系统、AI超算均成绩斐然。A100同时可提供训练、推理和数据分析,把AI训练和推理的算力提升到上一代V100的20倍,把HPC性能提升到V100的2.5倍。

▲NVIDIA A100 GPU
A100由基于安培架构的GA100 GPU提供支持,具有高度可扩展的特性,支持在单GPU和多GPU工作站、服务器、集群、云数据中心、边缘系统和超级计算机中为GPU计算和深度学习应用提供超强加速能力。
以多GPU配置的集成底板形式出现的服务器构建块HGX A100最高可以组成拥有10 PFLOPS算力的超大型8-GPU服务器。
集成了8个A100的AI系统DGX A100单节点算力达5 PFLOPS,售价19.9万美元。
140个DGX A100系统组成的DGX SuperPOD集群,AI算力达700 PFLOPS,跻身世界上最快的20台AI超级计算机之列。
NVIDIA自家的超算SATURNV在添加4个DGX SuperPOD后,总算力从1.8 ExaFLOPS增至4.6 ExaFLOPS,增涨155%有余。
这些奔着突破算力极限而去的性能参数,离不开以NVIDIA新一代安培架构为核心的五大关键技术的支持。

(1)安培架构:全球最大7nm芯片,拥有542亿个晶体管,采用40GB三星HBM2,内存带宽可达到1.6 Tbps。
高带宽的HBM2内存和更大、更快的缓存为增加的CUDA Core和Tensor Core提供数据。(2)第三代Tensor Core:处理速度更快、更灵活,TF32精度可将AI性能提升20倍。(3)结构化稀疏:进一步将AI推理性能提升2倍。(4)多实例GPU:每个GPU可分成7个并发实例,优化GPU利用率。(5)第三代NVLink和NVSwitch:高效可扩展,带宽较上一代提升2倍有余。
黄仁勋介绍说,这是第一次能在一个平台上实现加速工作负载的横向扩展(scale out)和纵向扩展(scale up)。
NVIDIA A100 GPU架构不仅可以加速大型复杂的工作负载,还可以有效地加速许多较小的工作负载,既能支持构建数据中心,同时可提供细粒度工作负载供应、更高的GPU利用率和改进的TCO。二、GA100基本架构:内存容量更大、带宽更快
要在GPU上获得极致性能,对于CUDA人员来说可能更感兴趣的是GPU中的SM和内存子系统。我们可以从新一代GA100架构图中看到硬件结构的变化。

GA100完整架构
图中上方是PCIe 4.0,带宽较PCIe 3.0增加1倍,使得GPU与CPU的通信速度更快。下方是12个高速连接NVLink。
中间是SM和L2 Cache。可以看到,与V100不同,A100中L2 Cache被分为两块,能提供的带宽也是V100的两倍。
中间其他部分为计算和调度单元,包含8个GPC,每个GPC内部有8个TPC,每个TPC含两个SM。因此一个完整的GA100架构GPU有8x8x2=128个SM。每个SM中含有4个第三代Tensor Core,即完整GA100架构GPU有512个Tensor Core。
A100 GPU并不是完整版GA100架构芯片,包含了108个SM、432个Tensor Core。后期随着良品率的提升,我们或将看到更加完整的GA100架构GPU。与Volta、Turing架构相比,安培架构中每SM的计算能力增加了2倍。

GA100 Streaming Multiprocessor(SM)
为了确保计算引擎得到充分利用,则需要更好的存储能力。GA100架构图左右两侧有6个HBM2内存模块,每个HBM2内存模块对应两个512-bit内存控制器。
A100 GPU中有5个高速HBM2内存模块、10个内存控制器,容量达40GB,显存带宽达到1.555 TB/s,较上一代高出近70%。
A100的片上存储空间也变得更大,包括40MB的L2 cache,较上一代大7倍。

A100 L2 cache可提供的读取带宽是V100的2.3倍,因而能以比从HBM2内存读写高得多的速度缓存和重复访问更大的数据集和模型。L2 cache residency control被用于优化容量利用率,可以管理数据以保存或从缓存中删除数据。
为了提高效率和增强可扩展性,A100增加了计算数据压缩,可节省高达4倍的DRAM读/写带宽、4倍的L2读带宽和2倍的L2容量。
此外,NVIDIA通过将L1 cache和shared memory单元结合到一个内存块的方式来提高内存访问的性能,同时简化了编程和调优步骤,并降低软件的复杂性。
每个SM中的L1 cache和shared memory单元总容量达192 KB,是此前V100的1.5倍。

CUDA 11中还包含一个新的异步复制指令,可选择绕过L1 cache和寄存器文件(RF),直接将数据从global memory异步复制加载到shared memory中,从而显著提高内存复制性能,有效利用内存带宽并降低功耗。

三、AI算力提升20倍是怎么实现的?
AI和HPC算力提升,主要归功于安培架构中采用的第三代Tensor Core。
NVIDIA第三代Tensor Core除了支持FP32和FP16外,通过引入新的精度TF32和FP64以加速AI及HPC应用,并支持混合精度BF16/FP16以及INT8、INT4、Binary。
借由第三代Tensor Core的三类新特性,A100 GPU的单精度AI训练和AI推理峰值算力均为上一代的20倍,HPC峰值算力为上一代的2.5倍。

▲A100 vs V100峰值性能1、TF32和混合精度BF16/FP16
TensorFloat-32(TF32)是NVIDIA A100中用于处理矩阵数学(即张量运算)的新数值格式,矩阵数学在AI及部分HPC运算中很常用。
随着AI网络和数据集持续扩张,算力需求与日俱增,研究人员尝试用较低精度的数学计算来提升性能,但此前这样做需要调整一些代码,而新精度TF32既做到性能提升,同时又无需更改任务代码。
新精度TF32与FP32一样都拥有8个指数位,能支持相同的数字范围;尾数位和FP16一样是10个,精度水平高于AI工作负载要求。

FP32是当前深度学习训练和推理中最常用的格式,而TF32的工作方式与FP32相似,TF32 Tensor Core根据FP32数据的输入转换成TF32格式后进行运算,最后输出FP32格式的结果。
借助于NVIDIA库,使用TF32 Tensor Core将A100单精度训练峰值算力提升至156 TFLOPS,即V100 FP32的10倍。
为了获得更好的性能,A100还可使用FP16/BF16自动混合精度(AMP)训练,只需修改几行代码,就能将TF32性能再提高2倍,达到312 TFLOPS。

NVIDIA正与开发AI框架的开源社区合作,致力于使TF32成为A100 GPU上的默认训练模式。
今年6月份,开发人员将可以在NGC的NVIDIA GPU加速软件列表中获取支持TF32的PyTorch版本和TensorFlow版本。2、结构化稀疏
要实现A100 TF32运行速度提升20倍,还需用到第三代Tensor Core的另一个关键特性——结构化稀疏。
稀疏方法对于算法工程师来说不算陌生,通过从神经网络中提取尽可能多不需要的参数,来压缩神经网络计算量。其难点在于如何兼顾更快的速度和足够的准确率。
而安培架构中利用稀疏Tensor Core,即做到了提供高达2倍的峰值吞吐量,同时不会牺牲深度学习核心矩阵乘法累加作业的准确率。
这是少有的通过硬件对密集计算进行稀疏优化的方法。

该方法首先使用密集的权重训练网络,然后引入2:4细粒度结构稀疏模式进行剪枝,最后重新训练,然后重复训练步骤,采用和之前训练相同的超参数、初始化权重和零模式。
具体压缩方式是限定只做50%稀疏,要求每相邻4个元素中最多有两个非零值,有index数据结构指示哪两个数据不被置零。权重经压缩后,可有效将数学运算速度提高2倍。
为什么理想性能上限可以提升2倍呢?如下图所示,矩阵A是一个16×16稀疏矩阵,稀疏性为50%,遵循2:4稀疏结构,而矩阵B是一个只有A一半大小的16×8密集矩阵。

标准的矩阵乘积累加(MMA)操作不会跳过零值,而是计算整个16x8x16矩阵乘N个周期的结果。
而使用稀疏MMA指令,矩阵A中每一行只有非零值的元素与矩阵B相应元素匹配,这将计算转换成一个更小的密集矩阵乘法,实现2倍的加速。
在跨视觉、目标检测、分割、自然语言建模和翻译等数十种神经网络的评估中,该方法的推理准确率几乎没有损失。
经结构化稀疏的A100 TF32 Tensor Core深度学习训练算力最高达到312 TFLOPS,是V100 INT8峰值训练速度15.7 TFLOPS的20倍。
经结构化稀疏的A100 INT8 Tensor Core执行深度学习推理速度最高达到1248 TOPS,是V100 INT8峰值推理速度62 TOPS的20倍。

3、双精度FP64 DMMA
TF32主要用于加速AI运算,而HPC吞吐量的提升主要源自引入对经过IEEE认证的FP64精度的支持。
A100上的双精度矩阵乘法加法指令取代了V100上的8条DFMA指令,减少了指令取用、调度开销、寄存器读取、数据路径功率和shared memory读取带宽。
支持IEEE FP64精度后,A100 Tensor Core峰值算力可达19.5 TFLOPS,是V100 FP64 DFMA的2.5倍。

四、多实例GPU:将A100一分为七
A100是第一个内置弹性计算技术的多实例GPU(MIG,Multi-Instance GPU)。
MIG可以把GPU做物理切割,由于A100上有7个GPU,加之考虑到资源调度情况,A100最多可分割成7个独立的GPU实例。
如果将A100分成7个GPU实例,1个GPU实例的算力约等同于一颗V100,也就是说A100能提供相当于V100的7倍的计算资源。

MIG的核心价值是可以为不同类型的工作负载灵活提供规模适配的GPU资源。
如果不使用MIG,同一GPU上运行的不同任务可能会争用相同的资源,挤占其他任务的资源,导致多项任务无法并行完成。
而使用MIG后,不同任务可以在不同的GPU实例上并行运行,每个实例都拥有各自专用的SM、内存、L2缓存和带宽,从而实现可预测的性能,并尽可能提升GPU利用率。

这为工作负载提供稳定可靠的服务质量和有效的故障隔离,假设某一实例上运行的应用出现故障,不会影响到其他实例上运行的任务。
管理人员还可动态地重新配置MIG实例,比如白天用7个MIG实例做低吞吐量推理,夜间将其重新配置成一个大型MIG实例做AI训练。
这对拥有多租户用例的云服务提供商尤其有益,资源调度更加灵活,运行任务不会彼此影响,进一步增强安全性。

此外,CUDA编程模式没有变化,容器中的AI模型和HPC应用可通过NVIDIA Container Runtime直接在MIG实例上运行。五、第三代互联技术:让GPU互联再提速
MIG是scale-out的主要驱动力,而实现scale-up则需要更好的通信技术,即GPU与GPU之间的“高速公路”——NVLink和NVSwitch。
标准PCIe连接因带宽有限,在多GPU系统中通常会造成瓶颈,高速、直接的GPU到GPU互联技术NVLink应运而生。
NVLink可将多个NVIDIA GPU连成一个巨型GPU来运行,从而在服务器上提供高效的性能扩展,A100使用NVLink的GPU到GPU带宽比PCIe快得多。

A100中有12个第三代NVLink连接,每个差分信号线的速率可达到50 Gb/s,几乎是V100的2倍。
每个NVLink链路在每个方向上有4对差分信号线,因此单向通信能力是50×4÷8=25 GB/s,双向即50 GB/s。12个第三代NVLink的总带宽则可达到600 GB/s,即V100的两倍。
相比之下,上一代V100中有6个NVLink,每个NVLink每个方向上有8对差分信号线,总带宽为300 GB/s。
每个GPU上的NVLink可高速连接到其他GPU和交换机,为了扩展到更大的系统,则需要NVIDIA NVSwitch将多个NVLink加以整合。
NVIDIA NVSwitch是以NVLink先进的通信能力为基础的节点交换架构,可在单个服务器节点中支持8到16个全互联GPU,使得AI性能足以更高效地扩展到多个GPU。

第三代NVSwitch是一颗7nm芯片,包含60亿晶体管,有36个端口,是V100端口数目的2倍;总聚合带宽达9.6 TB/s,是V100总聚合带宽的2倍。
NVLink和NVSwitch技术可提供更高带宽、更多链路,并提升多GPU系统配置的可扩展性,在搭载NVIDIA GPU的一系列板卡、服务器、超算产品中功绩斐然。
新NVIDIA DGX、HGX和EGX系统中的多个A100 GPU间均由第三代NVIDIA NVLink和NVSwitch实现高速通信。
以DGX A100为例,该设备中采用AMD Rome CPU、8颗A100 GPU、6颗NVSwitch芯片,9个Mellanox ConnectX-6 200Gb/s网络接口。

通过NVIDIA NVLink、NVSwitch及Mellanox最新InfiniBand和以太网解决方案连接,基于A100的系统可以扩展到数十、数百或数千个A100,用于计算集群、云实例或超大型超级计算机,从而满足多种类型的应用程序和工作负载的加速需求。结语:走向计算的下一纪元
从上一代被誉为“地表最强AI芯片”的V100,到新发布的安培架构GPU,我们可以看到NVIDIA AI硬件思维逐渐向专用化方向倾斜。
尤其是GA100架构中的计算单元结构优化,包括支持新精度和结构化稀疏,本质上是在围绕AI和HPC的特性在做文章。
正如NVIDIA近年来所强调的,它已从一家纯粹的显卡公司进化为一系列AI与HPC计算解决方案的提供商。无论是计算与内存结构的升级,还是互联技术的迭代进化,都与NVIDIA积累的强大研究和工程能力密不可分。
这些技术进步所带来的更强算力,将催化AI、5G、数据科学、机器人、基因组学、金融分析等诸多领域的创新研究与应用进程。
当许多公司还以超越NVIDIA V100算力为目标时,NVIDIA已经冲向计算的下一个纪元。
附NVIDIA历代数据中心GPU规格比较:

网络架构采用 bs/cs 混搭模式_深扒英伟达安培新架构,五大技术新招刀刀见血...相关推荐

  1. 网络架构采用 bs/cs 混搭模式_【案例赏析】60㎡混搭,鲜活的色彩混搭,元气满满...

    原标题:[案例赏析]60㎡混搭,鲜活的色彩混搭,元气满满 60㎡ / 10万 / 混搭 / 2室1厅 [设计背景] 房屋面积:60㎡ 装修预算:10万 风格: 混搭 房型:2室1厅 [设计解析] 圳星 ...

  2. 网络架构采用 bs/cs 混搭模式_最高处|SM一姐出道20年充满偶像气质天生音乐才能还有最高级的混搭_休闲...

    原标题:SM一姐出道20年充满偶像气质 天生音乐才能还有最高级的混搭 SM一姐2000年出道,其实权宝儿是一个幸运的艺人,拥有充满偶像气质的外貌和天生的音乐才能,舞蹈实力不容小觑,颜值也特别高,堪称盛 ...

  3. 英伟达_如何超越英伟达?

    从AI热潮中率先获益的英伟达,其GPU参数和性能频繁出现在不少AI芯片发布会的对比图中.这是在缺乏AI芯片衡量的标准时,新的AI芯片证明自己实力的不错方式.不过,声称性能超越英伟达GPU的创新AI芯片 ...

  4. 英伟达显卡不同架构_英伟达GeForce RTX 3070 Ti与RTX 3070显卡规格曝光

    除了主打高端市场的 GeForce RTX 3090,玩家们对于英伟达即将推出的 RTX 3080 / 3070 系列显卡更为期待.其中采用 Ampere GA104 GPU.具有 3072 个计算核 ...

  5. 英伟达显卡不同架构_英伟达全新架构显卡或多达18432个流处理器

    近期有消息称英伟达可能会推迟被称为Hopper的架构,取而代之的是Lovelace架构,以英国数学家Ada Lovelace的名字命名,英伟达内部用 "ADxxx "作为新GPU的 ...

  6. 英伟达最大gpu_英伟达正式发布Ampere架构GPU,完成史上最大性能飞跃

    PingWest品玩5月14日讯,在GTC 2020线上发布会上,英伟达CEO黄仁勋正式推出了安培(Ampere)架构GPU.据其表示,这块芯片采用7nm工艺,540亿晶体管,20倍AI算力,实现5大 ...

  7. 鸿蒙系统绿幕,英伟达发布新RTX 30系显卡:全新安培架构 支持8K游戏

    9月2日凌晨消息,英伟达在线上举行发布会,正式发布了GeForce RTX 30系显卡.发布会依然在老黄的厨房中进行,总计发布了RTX3080.3070与性能怪兽RTX 3090三款显卡. RTX 3 ...

  8. 英伟达显卡不同架构_英伟达新款笔记本显卡全阵容曝光:共计六款

    本文转自:IT之家 作者:孤城 根据WCCFTECH的独家消息,英伟达Super系列移动显卡将于3月31日发布,价格与老款维持不变,另外3月31日英特尔也将推出十代H系列处理器. WCCFTECH的消 ...

  9. 英伟达TX2烧录系统_英伟达的DPU,是想在数据中心奇袭英特尔?

    热点追踪 / 深度探讨 / 实地探访 / 商务合作 最近几年,经常关注科技圈的朋友们总会发现,每次遇到厂商有重大发布,就总能看到"颠覆"."极致"." ...

最新文章

  1. opencv文件路径问题
  2. 学python心得体会500字-Python初学心得体会
  3. 2021-9-下旬 数据结构 - 线性表 - 循环链表 - java实现代码(复习用)
  4. Python---modules(模块)
  5. java.library.path到底指什么
  6. 算法导论——DFS深度优先搜索
  7. Python协程--实现斐波那契数列(Fibonacci)的几种方式
  8. hdu 1514 记忆化搜索
  9. 人工智能 - paddlepaddle飞桨 - 入门之安装教程
  10. linux中wait()系统调用的例子,linux进程管理之wait系统调用
  11. 【华为云技术分享】云图说|人工智能新科技—文字识别服务
  12. Linear Algebra - Determinant(几何意义)
  13. Educational Codeforces Round 54 (Rated for Div. 2): E. Vasya and a Tree(DFS+差分)
  14. 卷积神经网络 第三周作业:Residual+Networks+-+v1
  15. 处理浏览器-Disposing Browser
  16. python入门指南by许半仙-《江火欲燃山》《这题超纲了》《Python入门指南》
  17. logback配置信息详解
  18. Pikachu漏洞平台练习
  19. 足球数据API接口 - 【球员资料】API调用示例代码
  20. 【华为机试真题详解】不含 101 的数【2022 Q4 | 100分】

热门文章

  1. IDEA生成springboot项目的两种方式
  2. 5月2日云栖精选夜读:DT科技评论第35期:可以解锁任何手机的万能指纹
  3. 工信部、公安部、交通部:拟将自动驾驶汽车道路测试及示范应用范围拓宽至高速公路...
  4. 【转】在 26 岁时写给 18 岁的自己--Livid
  5. html5文本框获取焦点,CSS3实现文本输入框获取焦点高亮显示
  6. 使用php下载网络图片有哪些方法,php下载网络图片常用的三个方法总结_后端开发...
  7. Cannot Resolve Symbol xxx 错误解决
  8. 二进制部署高可用Kubernetes v1.17.x
  9. h5棋牌源码中MySQL中的锁(表锁、行锁)
  10. python实现自动拨打电话_twilio python自动拨打电话,播放自定义mp3音频的方法