GPU选购指南:训练ML模型,我必须买RTX3080吗?( 六 )


GPU 深度学习性能下面的基准测试不仅包括 Tesla A100 和 Tesla V100 的基准测试,我还构建了一个适合这些数据的模型,以及基于 Titan V、Titan RTX、RTX 2080 Ti 和 RTX 2080 的四个不同的基准测试 。[ 1 , 2 , 3 , 4 ]
除此之外,我还通过在基准数据的这些数据点之间进行插值扩展了 RTX 2070、RTX 2060 卡或是 Quadro RTX 6000&8000 卡 。通常,在同一个架构中,GPU 的扩展与串流多处理器和带宽成线性关系,而我的架构模型就是以此为基础 。
我只收集了混合精度 FP16 训练的基准数据,因为我相信,没有充分的理由使用 FP32 训练 。

GPU选购指南:训练ML模型,我必须买RTX3080吗?

文章插图
 
与 RTX 2080 Ti 相比,RTX 3090 将卷积网络的速度提高了 1.57 倍,将 Transformer 的速度提高了 1.5 倍,与此同时,定价也涨了 15% 。因此,与 Turing RTX 20 系列相比,Ampere RTX 30 提供了一个非常实质性的改进 。
GPU 深度学习的每美元性能什么 GPU 能给你带来最好的回报?这取决于整个系统的成本 。如果你有一个成本高昂的系统,那么投资更昂贵的 GPU 是有意义的 。
这里有三个 PCIe 3.0 构建,我用它作为 2/4 GPU 系统的基础成本,然后再加上 GPU 成本 。GPU 成本是 GPU 在亚马逊和 eBay 上成本的均值 。对于新的 Ampere GPU,我使用了定价 。结合上文给出的性能值,就可以得出这些 GPU 系统的每美元性能值 。对于 8 GPU 系统,我使用 Supermicro barebone 作为基准成本——这是 RTX 服务器的行业标准 。请注意,这些柱状图没有考虑内存需求 。你应该首先考虑自己的内存需求,然后在图表中寻找最佳选项 。关于内存,这里有一份大致的指南:
  • 使用预训练的 Transformer;从头开始训练小型 Transformer:>= 11GB
  • 在研发 / 生产环境中训练大型 Transformer 或卷积网络:>= 24 GB
  • 开发神经网络原型(Transformer 或卷积网络):>= 10 GB
  • Kaggle 竞赛:>= 8 GB
  • 计算机视觉应用:>= 10GB

GPU选购指南:训练ML模型,我必须买RTX3080吗?

文章插图
 

GPU选购指南:训练ML模型,我必须买RTX3080吗?

文章插图
 

GPU选购指南:训练ML模型,我必须买RTX3080吗?

文章插图
 
GPU 推荐我需要再次强调的第一件事是:在选择 GPU 的时候,你需要确保它有足够的内存来完成你想做的事情 。选择 GPU 应该按下面的步骤来:
  1. 我想用 GPU 做什么:Kaggle 竞赛、学习深度学习、破解小项目(GAN 还是大型语言模型?)、计算机视觉 / 自然语言处理 / 其他领域研究,或者其他什么?
  2. 我要做的事需要多大内存?
  3. 使用上面的成本 / 性能图找出满足内存标准的、最适合你的 GPU 。
  4. 对于我选择的 GPU 有其他的注意事项吗?例如,如果是 RTX 3090,我能把它装进我的电脑吗?对于我选的 GPU,我的电源单元(PSU)功率是否足够?散热会是问题吗?或者我能以某种方式有效地冷却 GPU 吗?
其中一些细节需要你自我反省你想要什么,也许可以研究一下,对于你的兴趣领域,其他人使用多大内存的 GPU 。我可以提供一些指导,但无法面面俱到 。
我什么时候需要 >= 11 GB 的内存?我之前提到过,如果你使用 Transformer,那么你至少应该有 11GB 的内存,如果你研究 Transformer,则内存 >= 24GB 更好 。这是因为之前大多数经过预训练的模型都有相当高的内存要求,而且这些模型至少是使用拥有 11 GB 内存的 RTX 2080 Ti GPU 进行训练 。因此,小于 11GB 可能会遇到难以或不可能运行某些模型的情况 。
其他需要大量内存的领域包括医学成像、一些最先进的计算机视觉模型以及任何有超大图像的东西(GAN,样式转换) 。
一般来说,如果你想建立一个模型并据此获得竞争优势,无论是研究、行业还是 Kaggle 竞赛,额外的内存可能会为你带来优势 。
什么时候内存可以 <11 GB ?RTX 3070 和 RTX3080 是非常强大的卡,但它们内存有点小 。不过,对于许多任务,你不需要那么大的内存 。
如果你想学习深度学习,那么 RTX 3070 就很完美 。这是因为训练大多数架构的基本技能都可以通过将它们缩小一点或者使用小一点的输入图像来学习 。如果我再次学习深度学习,我可能会使用一个 RTX 3070,如果有多余的钱,甚至会用多个 。
RTX 3080 是目前为止最具成本效益的卡,因此是原型设计的理想选择 。对于原型设计,你想要内存最大的,这仍然很便宜 。这里所说的原型设计可以是在任何领域的原型设计:研究、Kaggle 竞赛、为创业公司出主意 / 设计模型、试验研究代码 。对于所有这些应用程序,RTX 3080 都是最好的 GPU 。


推荐阅读