英伟达最新发布的基于新架构的A100加速计算卡,其官网宣传:
自动混合精度和FP16,可以为A100带来2倍的性能提升;
而且,在不更改代码的情况下,具有TF32的A100与英伟达Volta相比,性能能够高出20倍。
那么,A100与V100相比,究竟如何?最近Lambda网站真的把它俩的训练速度对比了一番。
硬件参数对比
△ 英伟达A100 GPU
相比V100,A100的单精度浮点计算能力,从15.7TFLOPS提升至19.5TFLOPS;而双精度浮点运算从7.8TFLOPS提升至9.7TFLOPS。
在英伟达的公开信息中,列出了A100与V100的参数对比:
在BERT深度学习训练中,二者的速度对比:
在其他训练模型下,A100是否能有同样出色的表现?
测试结果如何?
二者均选择适用于NVLink的产品进行测试,在32位精度下,采用PyTorch训练。
对于A100,32位是指FP32+TF32;对于V100,指的是FP32。
测试分为两部分:卷积神经网络训练速度、语言模型训练速度。
卷积神经网络训练速度
测试者将一块V100的32位的训练速度归一化,对比了不同数量GPU的训练速度。
将结果在SSD、ResNet-50和Mask RCNN上取平均值。(原始数据可通过文末链接查看)
得到结果:
例如:
- 1块A100 VS 1块V100,进行32位训练:前者速度是后者的2.17倍;
- 4块V100 VS 1块V100,进行32位训练:前者速度是后者的3.88倍;
- 8块A100的混合精度训练 VS 1块V100的32位训练:前者速度是后者的20.35倍。
语言模型训练速度
与上面的对比方法相同。
将结果在Transformer-XL base、Transformer-XL large、Tacotron 2和ERT-base SQuAD上取平均值。(原始数据可通过文末链接查看)
得到结果:
例如:
- 1块A100 VS 1块V100,进行32位训练:前者速度是后者的3.39倍;
- 4块V100的混合精度训练 VS 1块V100的32位训练:前者速度是后者的7.97倍;
- 8块A100的混合精度训练 VS 1块V100的32位训练:前者速度是后者的42.60倍。
结论
- 在卷积神经网络训练中:
1块A100的训练速度是1块V100的2.2倍;
使用混合精度时,前者则是后者的1.6倍。
- 在语言模型训练中:
1块A100的训练速度是1一块V100的3.4倍;
使用混合精度时,前者则是后者的2.6倍。
其中,分别用8块A100与8块V100,进行32位训练:前者速度能够达到后者的3.5倍;
看来,针对不同模式下的深度学习训练,英伟达A100都有着相当不错的效率。
“前所未有的规模”以及“惊人的性能”,所言不虚。
原文链接:
https://lambdalabs.com/blog/NVIDIA-a100-vs-v100-benchmarks/
测试原始数据:
https://lambdalabs.com/gpu-benchmarks
“