影视聚合站 科技 文章内容

英伟达RTX 3080值不值得抢?有人用它在TensorFlow上训练了卷积网络

发布时间:2020-11-14 14:20:44来源:机器之心

机器之心报道

作者:小舟、泽南

一通跑分猛如虎,结果发现深度学习框架还不支持。

自9月份英伟达发布新一代安培架构消费级显卡RTX30系列已过去两个月了,随着芯片代工者三星的产能爬坡,未来更多的人将有机会买到最新架构的GPURTX3080和3090。不过由于价格的原因,更多时候我们还是希望能够先得知性价比再去下单。最近,在机器学习社区已有先行者进行了测试。

首先,测试得出的结果喜忧参半:对于卷积神经网络来说,英伟达GeForceRTX3090要比专业的AI训练卡TeslaV100更快。不过在TensorFlow上使用RTX30系列GPU的体验是非常不稳定的,至少在NGC容器之内是如此。

特别是在最新版的TensorFlow2上,RTX30的性能似乎很差。

看来对于急需更高性能机器学习算力的人们来说,想要获得真正安培架构的速度还需要等待软件的适配。

在英伟达官网上,RTX30系列显卡的一些参数和价格。

近日,国外网站fsymbols使用容器中的TensorFlow,测试了英伟达GeForceRTX3090、3080对比2080Ti在部分流行卷积神经网络训练上的性能。在这些表格中,你会发现基准测试的结果有点奇怪,因为迄今为止框架对于新硬件的支持很差。

ResNet测试

测试使用了目前最常见的项目,深度残差网络ResNet50:

随后还有ResNet101网络的结果:

AIBenchmark测试

很多人都知道手机的AI算力有一个比较流行的基准测试,即苏黎世联邦理工大学研究者们提出的AIBenchmark。目前这一基准也加入了台式电脑和笔记本电脑显卡的测试分类。作者还在NGC20.10-tf1容器中运行了AI-Benchmark.的基准测试。

目前在AIBenchmark网站上排在榜单第一的计算卡还是英伟达TeslaV100SXM232GB,其推理分为17761,训练分18030,AI分数35791。RTX3080和3090均超过了这个分数。

虽然PyTorch是目前深度学习在学界和业界较为流行的框架,但这次测评中只有TensorFlow的数据,因为在开始进行基准测试时,PyTorch对RTX3080和3090卡的支持又被移除了。在某些网络上,它们的测试成绩和2060Super成绩相近——这显然不是一个正常的成绩。

英伟达的TensorFlowDocker容器

英伟达的TensorFlow容器之间的性能差异很大,这让人很困惑。仅从容器20.10NGC开始,TensorFlow才开始正式支持3090和3080卡,但实际上20.08容器拥有更好的性能。如果像之前发布过的所有AI训练基准一样,只限制测试一个版本,就不会获得很多有用的信息。因此,作者对3-7个不同的TensorFlow容器进行了基准测试,并在TensorFlow1.x和TensorFlow2.xNGC容器中测试了4种不同的ResNet变体。

参数

所有结果均适用于自动混合精度(AutomaticMixedPrecision)FP16进行的模型训练。目前我们只需研究Volta系列计算卡及以后的设备,更早年代的GPU分数已经没有意义。这些测试是在Ubuntu20.04、Nvidia驱动版本455.28、本机CUDA11.1版本的配置条件下运行的。当然,容器具有自己的CUDA版本,在容器内部启动nvidia-smi时,会报告CUDA版本。

批处理大小

例如,在NGC的TFv120.10容器的se-resnext101–32x4d训练基准上,一个批次128获得的训练速度是96张图像的更小批的2.5倍,192张图像1.5倍批处理大小速度的1.6倍。对于要买新显卡的人们来说,重要的是比对RTX3090和3080之间24G和10G显存带来的性能差异——一倍的价格换2.4倍的显存是不是值得?

在相似的批处理大小下,3090有时并不会比3080快很多,两者都无法满足各自快一万个CUDA核心的需求,但是增加3090的批处理大小,批处理大小可以超过2.4倍。因为批处理大小会影响激活占用的空间,而模型和梯度大小则具有固定的内存成本。

XLA优化

另一个变数是XLA优化对GPU训练性能的影响。这足以让我们了解TensorFlow团队所做的优化效果如何。由于某些原因,在NGC20.09TF1容器上,RTX3080/3090在XLA优化情况下的性能较差。在某些情况下,特定用例的性能比基于相邻用例的预期性能低9倍。

内存

我们知道,GeForceRTX30系列有GPU界的多项「第一」:它是首款有着24GBGDDR6X显存的游戏图形卡;首批支持HDMI2.1的GPU,一块显卡即可实现4k高刷新率或8k游戏。其中来自美光的GDDR6X内存可谓大跨步的提升——此前,显存带宽最高速度为64GB/s,传统二进制标准依赖两级信号传输编码为1s或0s的数据,每周期可传输一位数据。而美光新型的PAM4技术采用四个不同层级,同时向内存输入及输出两位数据。

由此,GDDR6X可以将单颗粒的内存带宽提升至84GB/s,从而使系统带宽提升为之前无法想象的1TB/s。30系列GPU的内存速度非常之快,相比2080Ti,3090的速度提升了两倍,24G的容量也比之前来的更加充足。

基准是来自20.10版本的代码,大部分可以在英伟达GitHub上的DeepLearningExamples中找到。但是,作者对容器的workspace/nvidia-examples/cnn/resnet.py中的Resnet-50代码进行了轻微的改动,因为英伟达的示例代码被限制为仅使用很小一部分(例如80%)的GPU内存。这是通过以下代码完成的:

…=tf.GPUOptions(per_process_gpu_memory_fraction=0.8)

…=tf.GPUOptions(per_process_gpu_memory_fraction=0.99)

CPU型号不同是否会对成绩有影响?测试发现,在i7-4960X或i9-7980XECPU上运行这些代码并没有造成太大的不同。但是大多数基准在i7-4960X上略胜一筹,因此不必为升级CPU过多担心。

对于GPU来说,在涉及深度学习的数学方面,30系列仅略高于20系列,两者均具有TensorCore32位累加运算性能,而RTXTitan和Quadro卡(RTX6000、A6000等)的速度是FP16累积TensorCore计算速率的一半,英伟达的研发者认为混合精度训练的TensorCore的计算速率足以进行推理,但不能进行训练。因为2080Ti的CudaCore(不是TensorCore)FP16计算没有减少一半,性能却是FP32FLOP的2倍。这次英伟达决定也将其削减,因此在AI计算中由于FP16计算的FLOPS和FP32一样多,因此改进几乎是微乎其微的,仅略高于2080Ti。你可以在英伟达的30系列规格PDF中发现这一点。

因此,如果你不是在训练1x1和3x3的,只看内存不看算力的卷积网络,而是在探索一些具有较大的「密集」/「全连接」非卷积层的计算密集型训练,现在更好的选择是购买二手RTXTitan卡,因为RTX20系列NVLinkGPU的价格正在迅速下降。当然,由于AMD今年十月发布了RadeonRX6900XT,明年春季RTX30系列显卡的价格也有望下降,我们甚至有可能等来RTX3080Ti。

结论

新一代架构肯定是更好的,如果你打算训练大型卷积神经网络,那么RTX3090一定比专业卡TeslaV100要好,而且成本方面也更划算。3090更好的原因在于内存更大,能够运行比V100更大的网络。即使在V100上可以以小批量进行处理,但3090的速度要更快一些,因此无需缩小批处理大小,选择3090更加合适。

对比同属消费级的RTX2080Ti,新一代显卡3080在AI训练任务上可以获得25-30%的性能提升,这相比英伟达在发布会上宣传的对比RTX2080有100%性能提升小了一些。但因为新品的价格没有提升,所以能买到的话还是物有所值。

如果用户确定只训练小型网络,并且也不需要在一台计算机上分配过多的计算量,那么3080将更具成本效益。至少在某种程度上,对于NGC容器,TensorFlowv2的性能差强人意。

英伟达RTX3080和3090是目前全球AI从业者最希望拥有的GPU,但自发布两个月来出货量仍然很少,不论是加价购买、程序抢单还是纯靠运气,能够买到这些显卡并进行简单的深度学习测试就足以花费大量时间了。对于大多数人来说,目前看起来还可以等一等。

参考内容:

https://fsymbols.com/3080-3090-benchmarks/

AmazonSageMaker实战教程(视频回顾)

AmazonSageMaker是一项完全托管的服务,可以帮助机器学习开发者和数据科学家快速构建、训练和部署模型。AmazonSageMaker完全消除了机器学习过程中各个步骤的繁重工作,让开发高质量模型变得更加轻松。

10月15日-10月22日,机器之心联合AWS举办3次线上分享,全程回顾如下,复制链接到浏览器即可观看。

另外,我们准备了AmazonSageMaker1000元服务抵扣券,帮助开发者体验各项功能。点击阅读原文,即可领取。

第一讲:AmazonSageMakerStudio详解

主要介绍相关组件,如studio、autopilot等,并通过在线演示展示这些核心组件对AI模型开发效率的提升。

视频回顾地址:https://app6ca5octe2206.h5.xiaoeknow.com/v1/course/alive/l_5f715443e4b005221d8ea8e3

第二讲:使用AmazonSageMaker构建一个情感分析「机器人」

主要介绍情感分析任务背景、进行基于Bert的情感分析模型训练、利用AWS数字资产盘活解决方案进行基于容器的模型部署。

视频回顾地址:https://app6ca5octe2206.h5.xiaoeknow.com/v1/course/alive/l_5f715d38e4b0e95a89c1713f

第三讲:DGL图神经网络及其在AmazonSageMaker上的实践

主要介绍图神经网络、DGL在图神经网络中的作用、图神经网络和DGL在欺诈检测中的应用和使用AmazonSageMaker部署和管理图神经网络模型的实时推断。

视频回顾地址:https://app6ca5octe2206.h5.xiaoeknow.com/v1/course/alive/l_5f715d6fe4b005221d8eac5d

©THEEND

转载请联系本公众号获得授权

投稿或寻求报道:content@jiqizhixin.com

© 2016-2017 ysjhz.com Inc.

站点统计| 举报| Archiver| 手机版| 小黑屋| 影视聚合站 ( 皖ICP备16004362号-2 )