收藏|深度学习如何挑选gpu?

author author     2022-12-05     636

关键词:



深度学习是一个对计算有着大量需求的领域,从一定程度上来说,GPU的选择将从根本上决定深度学习的体验。因此,选择购买合适的GPU是一项非常重要的决策。那么2022年,如何选择合适的GPU呢?这篇文章整合了网络上现有的GPU选择标准和评测信息,希望能作为你的购买决策的参考。


1 是什么使一个GPU比另一个GPU更快?


有一些可靠的性能指标可以作为人们的经验判断。以下是针对不同深度学习架构的一些优先准则:


Convolutional networks and Transformers: Tensor Cores > FLOPs > Memory Bandwidth > 16-bit capability


Recurrent networks: Memory Bandwidth > 16-bit capability > Tensor Cores > FLOPs


2 如何选择NVIDIA/AMD/Google


NVIDIA的标准库使在CUDA中建立第一个深度学习库变得非常容易。早期的优势加上NVIDIA强大的社区支持意味着如果使用NVIDIA GPU,则在出现问题时可以轻松得到支持。但是NVIDIA现在政策使得只有Tesla GPU能在数据中心使用CUDA,而GTX或RTX则不允许,而Tesla与GTX和RTX相比并没有真正的优势,价格却高达10倍。


AMD功能强大,但缺少足够的支持。AMD GPU具有16位计算能力,但是跟NVIDIA GPU的Tensor内核相比仍然有差距。


Google TPU具备很高的成本效益。由于TPU具有复杂的并行基础结构,因此如果使用多个云TPU(相当于4个GPU),TPU将比GPU具有更大的速度优势。因此,就目前来看,TPU更适合用于训练卷积神经网络。


3 多GPU并行加速


卷积网络和循环网络非常容易并行,尤其是在仅使用一台计算机或4个GPU的情况下。TensorFlow和PyTorch也都非常适合并行递归。但是,包括transformer在内的全连接网络通常在数据并行性方面性能较差,因此需要更高级的算法来加速。如果在多个GPU上运行,应该先尝试在1个GPU上运行,比较两者速度。由于单个GPU几乎可以完成所有任务,因此,在购买多个GPU时,更好的并行性(如PCIe通道数)的质量并不是那么重要


4 性能评测


1)来自Tim Dettmers的成本效益评测[1]

​https://timdettmers.com/2019/04/03/which-gpu-for-deep-learning/​

收藏

卷积网络(CNN),递归网络(RNN)和transformer的归一化性能/成本数(越高越好)。RTX 2060的成本效率是Tesla V100的5倍以上。对于长度小于100的短序列,Word RNN表示biLSTM。使用PyTorch 1.0.1和CUDA 10进行基准测试。


从这些数据可以看出,RTX 2060比RTX 2070,RTX 2080或RTX 2080 Ti具有更高的成本效益。原因是使用Tensor Cores进行16位计算的能力比仅仅拥有更多Tensor Cores内核要有价值得多。


2)来自Lambda的评测[2,3]

​https://lambdalabs.com/blog/best-gpu-tensorflow-2080-ti-vs-v100-vs-titan-v-vs-1080-ti-benchmark/​

​https://lambdalabs.com/blog/choosing-a-gpu-for-deep-learning/​


收藏

GPU平均加速/系统总成本


收藏

GPU性能,以每秒处理的图像为单位


收藏

 以 Quadro RTX 8000 为基准的针对Quadro RTX 8000的图像模型训练吞吐量


3) 来自知乎@Aero的「在线」GPU评测[4]

​https://www.zhihu.com/question/299434830/answer/1010987691​


大家用的最多的可能是Google Colab,毕竟免费,甚至能选TPU


收藏


不过现在出会员了:

收藏

免费版主要是K80,有点弱,可以跑比较简单的模型,有概率分到T4,有欧皇能分到P100。


付费就能确保是T4或者P100,一个月10美元,说是仅限美国。


Colab毕竟是Google的,那么你首先要能连得上google,并且得网络稳定,要是掉线很可能要重新训练,综合来看国内使用体验不太好。


下一个是百度AI Studio


收藏


免费送V100时长非常良心,以前很多人自己装tensorflow用,但是现在已经不允许了,实测tensorflow pytorch都不给装,必须得用paddlepaddle。那么习惯paddlepaddle的用户完全可以选这个,其他人不适合。


收藏


不过似乎GPU不太够,白天一直提醒高峰期,真到了22点后才有。


国外的还有vast.ai:


收藏


5 建议


1)来自Tim Dettmers的建议


  • 总体最佳GPU:RTX 2070 GPU
  • 避免使用 :任何Tesla;任何Quadro;任何Founders Edition;Titan RTX,Titan V,Titan XP
  • 高效但价格昂贵:RTX 2070
  • 高效且廉价:RTX 2060,GTX 1060(6GB)
  • 价格实惠:GTX 1060(6GB)
  • 价格低廉:GTX 1050 Ti(4GB)。或者:CPU(原型设计)+ AWS / TPU(培训);或Colab。
  • 适合Kaggle比赛:RTX 2070
  • 适合计算机视觉研究人员:GTX 2080 Ti,如果训练非常大的网络,建议使用RTX Titans


2)来自Lambda的建议


截至2020年2月,以下GPU可以训练所有SOTA语言和图像模型:


  • RTX 8000:48 GB VRAM
  • RTX 6000:24 GB VRAM
  • Titan RTX:24 GB VRAM


具体建议:


  • RTX 2060(6 GB):适合业余时间探索深度学习。
  • RTX 2070或2080(8 GB):适合深度学习专业研究者,且预算为4-6k
  • RTX 2080 Ti(11 GB):适合深度学习专业研究者,而您的GPU预算约为8-9k。RTX 2080 Ti比RTX 2080快40%。
  • Titan RTX和Quadro RTX 6000(24 GB):适合广泛使用SOTA型号,但没有用于RTX 8000足够预算的研究者。
  • Quadro RTX 8000(48 GB):价格相对较高,但性能卓越,适合未来投资。


参考文献

[1] https://timdettmers.com/2019/04/03/which-gpu-for-deep-learning/

[2] https://lambdalabs.com/blog/best-gpu-tensorflow-2080-ti-vs-v100-vs-titan-v-vs-1080-ti-benchmark/

[3] https://lambdalabs.com/blog/choosing-a-gpu-for-deep-learning/

[4] ​https://www.zhihu.com/question/299434830/answer/1010987691​



本文仅做学术分享,如有侵权,请联系删文。

—THE END—

收藏

深度学习tensorflow如何使用多gpu并行模式?

TensorFlow可以用单个GPU,加速深度学习模型的训练过程,但要利用更多的GPU或者机器,需要了解如何并行化地训练深度学习模型。常用的并行化深度学习模型训练方式有两种:同步模式和异步模式。下面将介绍这两种模式的工作... 查看详情

[ai开发]深度学习如何选择gpu?

机器推理在深度学习的影响下,准确性越来越高、速度越来越快。深度学习对人工智能行业发展的贡献巨大,这得益于现阶段硬件计算能力的提升、互联网海量训练数据的出现。本篇文章主要介绍深度学习过程中如何选择合适的... 查看详情

如何启用英特尔 iRIS Xe GPU 进行深度学习?

】如何启用英特尔iRISXeGPU进行深度学习?【英文标题】:HowtoenableinteliRISXeGPUforDeepLearning?【发布时间】:2021-11-1213:21:16【问题描述】:当我使用googlecolab训练数据以及将运行时切换到GPU时。我的colab只使用CPU而不是GPU。如何启用使... 查看详情

深度学习系列part

这是《GPU学习深度学习》系列文章的第三篇,主要是接着上一讲提到的如何自己构建深度神经网络框架中的功能模块,进一步详细介绍Tensorflow中Keras工具包提供的几种深度神经网络模块。本系列文章主要介绍如何使用腾讯云GPU服... 查看详情

如何在 Google 深度学习 VM 上安装 GPU 驱动程序?

】如何在Google深度学习VM上安装GPU驱动程序?【英文标题】:HowtoinstallGPUdriveronGoogleDeepLearningVM?【发布时间】:2021-09-0519:51:09【问题描述】:我刚刚用这张图片创建了一个谷歌深度学习虚拟机:c1-deeplearning-tf-1-15-cu110-v20210619-debian-... 查看详情

使用腾讯云gpu学习深度学习系列之二:tensorflow简明原理

...8765?fromSource=gwzcw.117333.117333.117333这是《使用腾讯云GPU学习深度学习》系列文章的第二篇,主要介绍了Tensorflow的原理,以及如何用最简单的Python代码进行功能实现。本系列文章主要介绍如何使用 腾讯云GPU服务器 进行深度... 查看详情

机器学习算法神经网络与深度学习-7dnn深度学习算法模型出现学习效果不好的情况,如何补救,对策如下,建议收藏。

目录深度学习效果不好的对策 训练数据效果不好的情况,采用什么对策方法1:properloss方法2:Mini-Batch方法3:采用newactivationfunction方法4:AdaptiveLearningRate测试数据效果不好的情况,采用什么对策:方法... 查看详情

[人工智能-深度学习-42]:开发环境-windows如何查看gpu的使用情况

作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客本文网址:https://blog.csdn.net/HiWangWenBing/article/details/121275804目录第1章命令行显示1.1概述与准备1.2查看命令帮助信息1.3 周期... 查看详情

如果是希望深度学习液冷gpu服务器显存核算率为共享资源分配单位,如何实现gpu虚拟化技术?

参考技术A蓝海大脑时空数据一体机研究人员表示:现有的GPU虚拟化技术是通过显存独享和算力共享的方式来实现,如果是希望高性能计算液冷GPU服务器显存核算率为共享资源分配单位,可能需要再从架构方面能支持才可以,现... 查看详情

pytorch2如何通过算子融合和cpu/gpu代码生成加速深度学习(代码片段)

...获、中间表示、运算符融合以及优化的C++和GPU代码生成的深度学习编译器技术入门计算机编程是神奇的。我们用人类可读的语言编写代码,就像变魔术一样,它通过硅晶体管转化为电流,使它们像开关一样工作,并允许它们实现... 查看详情

通晓的回答下哪家gpu服务器更适合深度学习领域?

参考技术A上海风虎信息作为深度学习服务器的专业厂商,专注于为科研院所和高校师生打造高性能GPU服务器,建议您选择深度学习服务器时需要注意以下几点:1.深度学习需要大量的并行计算资源,而且动辄计算几天甚至数周,... 查看详情

31gpu(下):为什么深度学习需要使用gpu?

...学习笔记——总目录【31】GPU(下):为什么深度学习需要使用GPU?引言一、Shader的诞生和可编程图形处理器【GPU发展历史】1、可编程管线(ProgramableFunctionPipeline)的引入2、着色器(Shader)的出现3... 查看详情

做深度学习,需要配置专门的gpu服务器吗?

深度学习是需要配置专门的GPU服务器的:深度学习的电脑配置要求:1、数据存储要求在一些深度学习案例中,数据存储会成为明显的瓶颈。做深度学习首先需要一个好的存储系统,将历史资料保存起来。主要任务:历史数据存储... 查看详情

深度学习装机指南:从gpu到显示器,全套硬件推荐

前言:硬件设备,是任何一名深度学习er不可或缺的核心装备。各位初级调参魔法师们,你们有没有感到缺少那一根命中注定的魔杖?可是,各种CPU、GPU、内存条、外设,那么多品牌种类型号参数,到底该怎么选?文章内容较长... 查看详情

深度学习基础——硬件知识总结(代码片段)

文章目录1.深度学习用CPU和GPU训练的区别2.GPU3.CPU4.其他硬件5.CPU和GPU的冷却系统6.深度学习四种基本的运算7.算力--处理单元8.查看硬件信息(1)查看GPU信息(2)查看CPU信息1.深度学习用CPU和GPU训练的区别CPU主要用于... 查看详情

cntk搞深度学习-1

CNTK搞深度学习ComputationalNetworkToolkit(CNTK)是微软出品的开源深度学习工具包。本文介绍CNTK的基本内容,如何写CNTK的网络定义语言,以及跑通一个简单的例子。 根据微软开发者的描述,CNTK的性能比Caffe,Theano,TensoFlow等主流工... 查看详情

停止和启动深度学习谷歌云虚拟机实例导致 tensorflow 停止识别 GPU

】停止和启动深度学习谷歌云虚拟机实例导致tensorflow停止识别GPU【英文标题】:StoppingandstartingadeeplearninggooglecloudVMinstancecausestensorflowtostoprecognizingGPU【发布时间】:2021-09-0804:09:29【问题描述】:我正在使用谷歌云提供的预构建深... 查看详情

第八节课-深度学习软件

 2017-08-19 主要内容:CPU和GPU介绍,几种深度学习框架的介绍 1.CPU和GPU CPU一般核数目比较少,适合做通用的计算,速度比较快,共享系统的内存 GPU一般单个核心的速度比较慢,但是核心数目很多,几千个,但是... 查看详情