NVIDIA深度架构

NVIDIA深度架构

今天,在2020年NVIDIA GTC主题演讲中,NVIDIA创始人兼首席执行官黄仁勋介绍了基于新NVIDIA Ampere GPU架构的新NVIDIA A100 GPU。本文介绍新的A100 GPU,并介绍了NVIDIA Ampere架构GPU的重要新功能。 

现代云数据中心中运行的计算密集型应用程序的多样性推动了NVIDIA GPU加速的云计算的爆炸式增长。此类密集型应用程序包括AI深度学习(DL)训练和推理,数据分析,科学计算,基因组学,边缘视频分析和5G服务,图形渲染,云游戏等。从扩大化的AI训练和科学计算,到扩大化的推理应用程序,再到支持实时对话式AI,NVIDIA GPU提供必要的功能来加速当今云数据中心中运行的众多复杂且不可预测的工作负载。

NVIDIA GPU是推动AI革命的领先计算引擎,为AI训练和推理工作提供了极大的提速。此外,NVIDIA GPU加速了许多类型的HPC和数据分析应用程序和系统,可以有效地分析,可视化数据并将其转化为见解。NVIDIA加速计算平台对于许多世界上最重要和增长最快的行业至关重要。

推出NVIDIA A100 Tensor Core GPU

NVIDIA A100 Tensor Core GPU基于新的NVIDIA Ampere GPU架构,并基于以前的NVIDIA Tesla V100 GPU的功能构建。它增加了许多新功能,并显着提高了HPC,AI和数据分析工作负载的性能。 

A100为在单GPU工作站和多GPU工作站,服务器,群集,云数据中心,边缘系统和超级计算机中运行的GPU计算和DL应用程序提供了强大的扩展能力。A100 GPU支持构建弹性,多功能和高吞吐量的数据中心。

A100 GPU包括革命性的新型多实例GPU(MIG)虚拟化和GPU分区功能,这特别有利于云服务提供商(CSP)。当配置为MIG操作时,A100允许CSP提高其GPU服务器的利用率,无需额外费用,即可提供多达7倍的GPU实例。强大的故障隔离功能使他们可以安全地对单个A100 GPU进行分区。

A100添加了功能强大的新型第三代Tensor Core,它比V100提升了吞吐量,同时增加了对DL和HPC数据类型的全面支持,以及新的Sparsity功能,使吞吐量进一步提高了一倍。 

A100中的新TensorFloat-32(TF32)Tensor Core操作提供了一条简单的路径来加速DL框架和HPC中的FP32输入/输出数据,其运行速度比V100 FP32 FMA操作快10倍,而具有稀疏性则快20倍。对于FP16 / FP32混合精度DL,A100 Tensor Core的性能是V100的2.5倍,而稀疏性则提高到5倍。 

新的Bfloat16(BF16)/ FP32混合精度Tensor Core操作以与FP16 / FP32混合精度相同的速率运行。INT8,INT4的Tensor Core加速和二进制全面支持DL推理,其中A100稀疏INT8的运行速度比V100 INT8快20倍。对于HPC,A100 Tensor Core包括新的符合IEEE标准的FP64处理,该处理能力是V100的FP64性能的2.5倍。 

NVIDIA A100 GPU的设计不仅可以加速大型复杂工作负载,而且可以有效地加速许多较小的工作负载。A100使建筑数据中心能够适应无法预测的工作负载需求,同时提供细粒度的工作负载供应,更高的GPU利用率和改进的TCO。 

NVIDIA A100 GPU提供了超过V100的非凡加速性能,用于AI训练和推理工作负载。同样,提升了不同HPC应用程序的显示性能。

NVIDIA Tesla V100NVIDIA Tesla T4相比,BERT深度学习训练和推理方案中A100 GPU的性能。

NVIDIA Tesla V100相比,A100 GPU HPC应用程序加速。

主要特征

基于NVIDIA Ampere架构的GA100 GPU采用台积电7nm N7制造工艺制造,为A100提供动力,包括542亿个晶体管,管芯尺寸为826 mm2。 

A100 GPU流式多处理器 

基于NVIDIA Ampere架构的A100 Tensor Core GPU中的新流式多处理器(SM)大大提高了性能,并基于Volta和Turing SM架构中引入的功能,并增加了许多新功能。 

A100第三代Tensor内核增强了操作数共享并提高了效率,并添加了功能强大的新数据类型,其中包括:

  • TF32 Tensor Core指令可加速FP32数据的处理
  • 适用于HPC的IEEE兼容FP64 Tensor Core指令
  • BF16 Tensor Core指令的吞吐量与FP16相同 

峰FP64 1

9.7 TFLOPS

峰值FP64 Tensor Core 1

19.5 TFLOPS

峰FP32 1

19.5 TFLOPS

峰FP16 1

78 TFLOPS

高峰BF16 1

39 TFLOPS

峰值TF32 Tensor Core 1 

156 TFLOPS | 312 TFLOPS 2

峰值FP16 Tensor Core 1

312 TFLOPS | 624 TFLOPS 2

峰值BF16张量核心1

312 TFLOPS | 624 TFLOPS 2

峰值INT8张量核心1

624 TOPS | 1,248 TOPS 2

峰值INT4张量核心1

1,248 TOPS | 2,496 TOPS 2

1. A100 Tensor Core GPU性能规格
1)峰值速率基于GPU增强时钟。
2)使用新的稀疏功能有效的TFLOPS / TOPS

 

A100 Tensor Core中的新稀疏支持可以利用DL网络中的细粒度结构稀疏性来使Tensor Core操作的吞吐量增加一倍。有关稀疏功能的详细信息,请参阅A100引入的细粒度结构化稀疏资料。 

与V100相比,A100中更大,更快的L1高速缓存和共享内存单元提供了每个SM的总容量的1.5倍(192 KB与每个SM 128 KB),从而为许多HPC和AI工作负载提供了额外的加速。 

其它几个新的SM功能可提高效率和可编程性,并降低软件复杂性。

40 GB HBM2和40 MB L2缓存

为了满足其庞大的计算吞吐量,NVIDIA A100 GPU拥有40 GB的高速HBM2内存,具有一流的1555 GB /秒的内存带宽,与Tesla V100相比增加了73%。此外,A100 GPU拥有更多的片上内存,其中包括40 MB的2级(L2)缓存-比V100大7倍-以最大化计算性能。借助新的分区交叉开关结构,A100 L2缓存提供了V100的L2缓存读取带宽的2.3倍。 

为了优化容量利用率,NVIDIA Ampere体系结构提供了L2缓存驻留控件,可管理要保留或从缓存中逐出的数据。A100还增加了计算数据压缩功能,以使DRAM带宽和L2带宽最多增加4倍,而L2容量最多增加2倍。 

多实例GPU

全新的多实例GPU(MIG)功能使A100 Tensor Core GPU可以安全地划分为多达七个用于CUDA应用程序的独立GPU实例,从而为多个用户提供独立的GPU资源以加速其应用程序。 

使用MIG,每个实例的处理器都具有贯穿整个内存系统的单独且隔离的路径。片上交叉开关端口,L2缓存库,存储器控制器和DRAM地址总线都唯一地分配给单个实例。这样可以确保单个用户的工作负载可以以可预测的吞吐量和延迟运行,并且具有相同的二级缓存分配和DRAM带宽,即使其它任务正在颠覆自己的缓存或使DRAM接口饱和也是如此。

MIG在提供定义的QoS和在不同客户端(例如VM,容器和进程)之间隔离的同时,提高了GPU硬件利用率。MIG对于具有多用户用例的CSP尤其有利。除了提供增强的安全性并为客户保证GPU利用率外,它还确保一个客户端不会影响其它客户端的工作或调度。 

第三代NVIDIA NVLink

在A100 GPU和新的NVIDIA NVSwitch中实现的第三代NVIDIA高速NVLink互连显着增强了多GPU的可扩展性,性能和可靠性。通过每个GPU和交换机的更多链接,新的NVLink提供了更高的GPU-GPU通信带宽,并改善了错误检测和恢复功能。 

第三代NVLink每对信号的数据速率为50 Gbit / sec,几乎是V100中25.78 Gbit / sec速率的两倍。单个A100 NVLink在每个方向上都提供类似于V100的25 GB /秒的带宽,但是与V100相比,每个链接仅使用一半的信号对数量。A100中的链接总数增加到12,而V100中的链接总数增加到6,从而产生600 GB /秒的总带宽,而V100则为300 GB /秒。 

支持NVIDIA Magnum IO和Mellanox互连解决方案

A100 Tensor Core GPU与NVIDIA Magnum IO和Mellanox最新的InfiniBand以及以太网互连解决方案完全兼容,以加速多节点连接。 

Magnum IO API集成了计算,网络,文件系统和存储,​​可为多GPU,多节点加速系统最大化I / O性能。它与CUDA-X库接口,可加速从AI和数据分析到可视化的各种工作负载的I / O。

具有SR-IOV的PCIe Gen 4

A100 GPU支持PCI Express Gen 4(PCIe Gen 4),通过提供31.5 GB /秒的速度(相对于x16连接的15.75 GB /秒),使PCIe 3.0 / 3.1的带宽增加了一倍。更快的速度对于连接到支持PCIe 4.0的CPU的A100 GPU以及支持快速网络接口(例如200 Gbit / sec InfiniBand)特别有利。 

A100还支持单个输入/输出虚拟化(SR-IOV),从而可以为多个进程或VM共享和虚拟化单个PCIe连接。

改进的错误和故障检测,隔离和控制

通过检测,包含并经常纠正错误和故障来最大化GPU的正常运行时间和可用性至关重要,而不是强制GPU重置。在大型多GPU群集和单GPU多租户环境(例如MIG配置)中尤其如此。A100 Tensor Core GPU包括改进错误/故障归因,隔离和控制的新技术,如本文后面的深入架构部分所述。

异步复制 

A100 GPU包含一个新的异步复制指令,该指令可将数据直接从全局内存加载到SM共享内存中,而无需使用中间寄存器文件(RF)。异步复制减少了寄存器文件的带宽,更有效地使用了内存带宽,并降低了功耗。顾名思义,异步复制可以在SM执行其它计算时在后台完成。

异步屏障

A100 GPU在共享内存中提供了硬件加速的障碍。这些障碍可以使用CUDA 11以符合ISO C ++的障碍对象的形式使用。异步屏障将屏障到达和等待操作分开,可用于通过SM中的计算将异步副本从全局内存重叠到共享内存中。可用于使用CUDA线程实现生产者-消费者模型。屏障还提供了以不同的粒度(不仅仅是扭曲或块级别)同步CUDA线程的机制。

任务图加速

CUDA任务图为将工作提交到GPU提供了更有效的模型。任务图由依赖关系连接的一系列操作(例如内存副本和内核启动)组成。任务图启用了一次定义和重复运行的执行流程。预定义的任务图允许在单个操作中启动任意数量的内核,从而大大提高了应用程序的效率和性能。A100添加了新的硬件功能,以使任务图中的网格之间的路径明显更快。 

posted @ 2020-12-30 13:25  吴建明wujianming  阅读(503)  评论(0编辑  收藏  举报