使用NVIDIA A100 TF32获得即时加速

使用NVIDIA A100 TF32获得即时加速

NVIDIA A100带来了我们公司历史上最大的单代性能增长。这是一个新的结构创新,这是一个多功能的支持,这是一个多功能的结构支持。TF32是用于深度学习训练的绝佳精度,因为它结合了FP32的范围和FP16的精度,与上一代的FP32精度相比,可提供高达5倍的加速。在这篇文章中,将简要介绍TF32的内部工作原理,并讨论显示其在一系列使用和网络中的影响的性能数据。

TF32 at a glance

浮点数据表示十进制数,如硬件中使用符号位(正数或负数)、指数(小数点左侧的数字)和尾数(小数点右侧的数字)。指数表示数字的范围,尾数表示精度。TF32达到了一个平衡,因为它与FP32具有相同的范围,并且有足够的位来提供AI训练所需的精度,而不需要使用太多的位,从而减慢处理速度和增加内存。             

为了获得最佳性能,A100还增强了16位数学功能,支持FP16和Bfloat16(BF16),其速率是TF32的两倍。使用自动混合精度(AMP),只需几行代码就可以将性能提高一倍。有关TF32力学的更多信息,请参阅A100 GPU加速AI训练中的TensorFloat-32,HPC高达20倍。

 

 

 Accelerated training across use cases

比较A100 TF32 precision和上一代V100 FP32的训练性能。所看到的是time-to-solution时间到解决方案(TTS)的加速,范围从2倍到5倍以上,这些加速没有代码更改,几乎没有造成精度损失,因此网络收敛速度更快。这些优势使应用程序能够更快、更频繁地接受训练。一些现代人工智能应用程序每天对网络进行多次再训练。如果处于构建神经网络的早期阶段,更快的训练时间意味着更快地完成模型构建,从而加快部署应用程序的时间。             

下面来看看TF32可以在不同的网络上以8-GPU服务器配置运行的TTS加速。图表显示了解决问题的时间,这是评估训练绩效的关键指标。当达到一个停止标准时,网络的训练运行就完成了,比如提高精度的百分比,或者在完成一系列迭代之后,也就是所谓的epoch。如果一个网络不收敛,那么训练运行就永远不会完成,这就是为什么只看吞吐量就不能得到完整的性能图。

 

 

 

Figure 1. Bars show the time-to-solution speedups that A100 TF32 can deliver compared to V100 FP32.

 

 

 Table 1. The actual time to solution for each network to converge.

使用TF32精度,A100提供了计算机视觉,语音,语言,以及推荐系统网络显著的加速。最大的加速出现在BERT自然语言处理(NLP)网络上,TF32带来了5倍的TTS加速。             

可能会注意到NVIDIA包含了一个名为ELECTRA的网络(高效地学习能够准确地对代币替换进行分类的编码器),这是一种新颖的语言表示预训练方法。Electra在各种NLP任务上的计算预算相同,其性能优于现有技术。对于计算机视觉网络,TTS的加速比为2.5倍,而对于Facebook创建的推荐系统网络DLRM,TTS的加速倍数约为3倍。             

除了图中所示的网络之外,我们还评估了来自GitHub上深度学习示例的23个不同网络的数据。总的来说,我们看到这些网络的平均TTS加速率为2.6倍。没有任何代码更改。有关性能数据的更多信息,请参阅NVIDIA数据中心深度学习产品性能。

Putting TF32 to work

英伟达使更容易使用TF32。             

这是cuDNN库中的默认精度,它加速了神经网络的关键数学运算。TensorFlow和Pythorch深度学习框架现在都支持TF32,并且可以在NGC上使用。在CuBLAS(基本线性代数)和CuTensor(张量基元)中也支持TF32。             

对于HPC应用,一个GPU加速线性求解器CuSolver可以利用TF32。线性解算器使用具有重复矩阵数学计算的算法,广泛应用于地球科学、流体动力学、医疗保健、材料科学、核能以及油气勘探等领域。

Get started with TF32 today

在第一个GPU实例在云端上线10年后,有100个GPU出现在市场上。凭借其TF32精度,以及MIG和加速结构稀疏性等其他特性,将GPU加速计算推进到每个主要CSP上的云GPU计算的下一个十年。             

然而,强大的硬件是不够的。深度学习和HPC需要一个完整的平台方法。除了深入学习的例子,NVIDIA NGC还包括框架和应用程序的容器化资源,以及预先训练的模型、Helm图和脚本。

posted @ 2020-11-21 11:25  吴建明wujianming  阅读(784)  评论(0编辑  收藏  举报