点上方蓝字计算机视觉联盟获取更多干货

在右上方 ··· 设为星标 ★,与你不见不散

编辑:Sophia
计算机视觉联盟  报道  | 公众号 CVLianMeng

转载于 :极市平台

AI博士笔记系列推荐:

博士笔记 | 周志华《机器学习》手推笔记“神经网络”

深度学习是一个对计算有着大量需求的领域,从一定程度上来说,GPU的选择将从根本上决定深度学习的体验。因此,选择购买合适的GPU是一项非常重要的决策。那么2020年,如何选择合适的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

END

声明:本文来源于网络

如有侵权,联系删除

联盟学术交流群

扫码添加联盟小编,可与相关学者研究人员共同交流学习:目前开设有人工智能、机器学习、计算机视觉、自动驾驶(含SLAM)、Python、求职面经、综合交流群扫描添加CV联盟微信拉你进群,备注:CV联盟  

最新热文荐读

GitHub | 计算机视觉最全资料集锦

Github | 标星1W+清华大学计算机系课程攻略!

Github | 吴恩达新书《Machine Learning Yearning》

收藏 | 2020年AI、CV、NLP顶会最全时间表!

收藏 | 博士大佬总结的Pycharm 常用快捷键思维导图!

收藏 | 深度学习专项课程精炼图笔记!

笔记 | 手把手教你使用PyTorch从零实现YOLOv3

笔记 | 如何深入理解计算机视觉?(附思维导图)

笔记 | 深度学习综述思维导图(可下载)

笔记 | 深度神经网络综述思维导图(可下载)

总结 | 2019年人工智能+深度学习笔记思维导图汇总

点个在看支持一下吧

经验 | 深度学习如何挑选GPU?相关推荐

  1. 深度学习如何挑选GPU?

    点击上方,选择星标或置顶,每天给你送干货! 阅读大概需要9分钟 跟随小博主,每天进步一丢丢 编辑:Sophia 计算机视觉联盟  报道  | 公众号 CVLianMeng 转载于 :极市平台 深度学习 ...

  2. 想知道深度学习卷积在GPU上如何优化吗?“大神”赵开勇带你深入浅出

    想知道深度学习卷积在GPU上如何优化吗?"大神"赵开勇带你深入浅出 2016-08-19 11:54 转载 陈杨英杰 0条评论 雷锋网(搜索"雷锋网"公众号关注 ...

  3. [机器学习入门] 深度学习简介,GPU计算的原理,分布式机器学习原理

    深度学习简介 深度学习的概念源于人工神经网络的研究.含多隐层的多层感知器就是一种深度学习结构.深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示. 深度学习采用的 ...

  4. Facebook更新PyTorch 1.1,深度学习CPU抢GPU饭碗?

    在一年一度的开发者大会F8上,Facebook放出PyTorch的1.1版本,直指TensorFlow"腹地". 不仅宣布支持TensorFlow的可视化工具TensorBoard ...

  5. 深度学习框架:GPU

    深度学习框架:GPU Deep Learning Frameworks 深度学习框架通过高级编程接口为设计.训练和验证深度神经网络提供了构建块.广泛使用的深度学习框架如MXNet.PyTorch.Te ...

  6. Colaboratory:手把手教你使用Google免费的云端IDE进行深度学习(免费的GPU加速)的详细攻略

    Colaboratory:手把手教你使用Google免费的云端IDE进行深度学习(免费的GPU加速)的详细攻略 目录 Colaboratory简介 Colaboratory使用步骤 (1).首先登陆谷 ...

  7. 【31】GPU(下):为什么深度学习需要使用GPU?

    [计算机组成原理]学习笔记--总目录 [31]GPU(下):为什么深度学习需要使用GPU? 引言 一.Shader 的诞生和可编程图形处理器[GPU发展历史] 1.可编程管线(Programable ...

  8. 31 | GPU(下):为什么深度学习需要使用 GPU?

    31 | GPU(下):为什么深度学习需要使用 GPU? 上一讲,我带你一起看了三维图形在计算机里的渲染过程.这个渲染过程,分成了顶点处理.图元处理. 栅格化.片段处理,以及最后的像素操作.这一连串的 ...

  9. 深度学习与“免费”GPU

    转自:言有三 https://mp.weixin.qq.com/s?__biz=MzA3NDIyMjM1NA==&mid=2649031614&idx=1&sn=4384b5e ...

最新文章

  1. 2022-2028年中国橡胶减震产品行业市场研究及前瞻分析报告
  2. 计算机安装两个键盘会怎样,外设门诊:一个键盘能否连接两个接收器?
  3. XXL-JOB v2.0.2,分布式任务调度平台
  4. 如何使用YUM列出包的内容?
  5. 写给对 ”游戏开发” 感兴趣的朋友们
  6. JDBC事务和JTA事务的区别 --包含spring事务 声明式事务
  7. Linux下用GDB调试程序崩溃错误
  8. 两台邮件服务器共用一个公网地址,两个不同域邮件服务器的互通
  9. Win7+IIS7下用FastCGI模式配置PHP环境
  10. Serverless 开发者平台
  11. conda - 创建虚拟环境并配置tensorflow-gpu
  12. 【2023秋招面经】兴业数金面试总结
  13. 一次泛微OA宕机事件的解决。
  14. java科学计数法的基本使用与如何看科学计数法
  15. 合伙人(GP) 有限合伙人(LP)是什么意思?
  16. 简历优化实战案例01:工作经历篇
  17. 9 计算机键盘是一个______,一种计算机键盘专用的清洁装置专利_专利申请于2018-05-31_专利查询 - 天眼查...
  18. 大数据播报 | 数据悄悄告诉你“私有云背后的秘密”
  19. POSTGRESQL 高可用 Patroni VS Repmgr 到底哪家强(1)
  20. 基于信息增益的ID3决策树介绍。

热门文章

  1. windows nginx 停止和启动_大数据离线项目实践之nginx服务器搭建
  2. 图解 继电器模组接线图_中间继电器如何接线_中间继电器接线图图解
  3. java 读取raw文件_Android 读取assets和raw文件内容实例代码
  4. 计算机中乘法是什么函数,c - 分解简单的C函数。 (在64位计算机中为128位乘法) - 堆栈内存溢出...
  5. android 控件宽度自适应_Android中让图片自适应控件的大小的方法
  6. c++和c语言的区别_C与C++傻傻分不清楚,有啥区别,咋用,杂学?
  7. python实现链表的删除_B站上的免费Python课程
  8. android 半圆滚动菜单,自定义控件:实现半圆滚动菜单效果
  9. ArcGIS案例学习笔记2_2_等高线生成DEM和三维景观动画
  10. Tutorial 2: Requests and Responses