最全深度学习显卡推荐分析

大热的深度学习,买什么显卡,才能让你明白,我真的爱你!

前言

不得不说,这几年深度学习(Deep Learning),人工智能(AI),机器学习(Machine Learning, ML),真的很火呀!工资高,工作好找,风投多,风光无限。大家都知道,要想学好深度学习,GPU是必不可少的,那么需要什么级别的显卡GPU呢?本文这里分情况说明。另外,本文不涉及具体的安装环境配置。

本文可能是目前为止最全深度学习显卡推荐分析方面的分析文章。

正文

其实,学习深度学习需要的硬件,可能没有想象的那么高,只是需要提前把握一下方向。本文从几方面来说明。

如果已经有电脑了,但是不知道可不可以学习深度学习,或者想升级硬件学习深度学习。另外,就是还没有电脑,想买适合深度学习的电脑。下面分别说明。再说一遍,本文不涉及具体的安装环境配置。

如何确认现有硬件是否可以学习深度学习?

如果你已经有了电脑,并且想学习深度学习,那么,必须假设你已经知道,什么是显卡,你的显卡是什么型号,属于NVIDIA阵营,还是AMD阵营(如果这个还不明白,希望你自己弄明白)。

1.没有独立显卡

没有搞笑,没有显卡,纯CPU也是可以进行深度学习训练的。如果你只是想熟悉一下深度学习的基本框架,代码阅读分析,很少量的训练,纯CPU也是可以的。Tensorflow和PyTorch都有纯CPU的版本,而作为入门学习来说,这两个深度学习框架,就足够了。纯CPU的安装配置更简单,只是训练速度会慢很多。

你又说,我没有独立显卡,又想使用GPU训练学习,怎么办?哈,考到我了,不过呢,还真有办法,那就是google colab,https://colab.research.google.com/。当然了,国内对这个网址不友好,你可能要自己想办法怎么访问。这里有免费的强大的GPU,一般是Tesla K80,也有TPU。内存一般是32G,硬盘不一定,有时候100G,有时候300G,重启或者短线重连后,你可能分配到不同的机器上,你的原有文件或者设置都会消失。每隔12小时会自动短线,因为网速及链接断开问题,如果想好好利用google colab,你可以把一些数据文件,脚本文件,放到你的google drive上,做好脚本,重新链接google colab后,可以用脚本迅速还原工作环境。

google colab默认支持tensorflow,也支持PyTorch(需自己安装),只要解决了访问google colab的问题,剩下的,都不是问题。

如果你想升级电脑硬件,来满足深度学习的硬件要求,就看看后面,新配电脑,关键配件如何选择?

2.已有独立AMD显卡

如果你的电脑是AMD的显卡,想学习深度学习,能用GPU来加速吗?

目前,AMD推出了ROCm开放软件平台,也可以用AMD的GPU进行深度学习训练加速,Tensorflow,PyTorch都可以很好的支持。只是需要Linux平台(如Ubuntu 20.04LTS),Windows平台还不支持。其实,大多数的深度学习从业人员,也都是使用Linux平台。AMD 可以用于深度学习的GPU有R9 290X,R9 390X,RX 470,RX 480,RX550, RX560,RX 570,RX 580,R9 Fury X,RX Vega 64,Radeon VII,注意,最新的RX 5500XT, RX 5600XT,RX 5700XT不支持ROCm。具体参见https://github.com/RadeonOpenCompute/ROCm#supported-gpus

AMD的GPU运算性能强大,经常可以越级打怪,比如RadeonVII的性能有时候可以超越2080Ti,RX 580对1070也是不遑多让。如果有以上的AMD显卡,学习深度学习也毫无问题,尤其是Tensorflow,PyTorch这两个利器都已经得到官方正式支持,放心大胆的玩起来吧。

3.已有独立NVIDIA显卡

已有NVDIA显卡,想学习深度学习,能用GPU来加速吗?这个,几乎可以肯定的说,当然没问题了,除非你的显卡太老了。。。,老到可能你没有听说(对于现在想学习深度学习的朋友来说)。

具体来说,NVIDIA的部分GT640,GT730等8年前的显卡都可以支持深度学习的GPU要求,基本来说,如果你是这两年买的电脑,又有NVIDIA显卡,基本都可以进行深度学习的模型训练。tensorflow的GPU要求是计算能力(Compute Capability)为3.5或更高(可以通过这里查看https://www.tensorflow.org/install/gpu),而NVIDIA的GPU计算能力可以通过查看https://developer.nvidia.com/cuda-gpus来了解大体的计算能力,如下图:NVIDIA GPU capability list

而本机的NVIDIA显卡计算能力可以通过命令C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\extras\demo_suite\deviceQuery.exe来确认,具体的数值可能和列表给出的数值有差别(主要是不同的CUDA版本)。这里,CUDA10.1版本下,1060 6GB的计算能力为6.1。

NVIDIA 1060 6GB deviceQuery capability

好了,你又说了,我有一个NVIDIA的老显卡,计算能力只有3.0,我不想纯CPU训练,也想GPU加速,却不想升级显卡,怎么用它来对tensorflow进行GPU加速?好吧,我只能说,路是有的,只是要难一点。

办法就是自己编译tensoflow,获取tensoflow的源代码后,设置编译参数,比如CUDA版本,比如计算能力。设置编译能力为3,然后编译tensorflow就可以了。这样,就可以用计算能力为3的NVIDIA显卡进行GPU加速tensorflow了。

如果你想升级显卡,请看新配电脑,关键配件如何选择?这一部分。

新配电脑,关键配件如何选择?

到现在,我们说的都是已有电脑的情况,现在来说,新配电脑的话,如果选择关键配件。

对于深度学习来说,关键配件是GPU,CPU,主板,硬盘和内存。这里不研究极限性能,省心,够用即可。

我们先说简单的部分,CPU,硬盘和内存。

CPU,对深度学习来说,CPU的作用没有那么大,所以,基本上,CPU随便选就够用了。现在的低端CPU也有4核8线程。如果需要多显卡并行这样的高端电脑,上高端的CPU也无悬念。AMD或者Intel的CPU均可。基本上一个GPU配置4个线程就差不多,也就是说,4核8线程的CPU,配置双显卡,问题都不大。所以,CPU方面不需要太担心。简单来说,多花1000在CPU上,不如多花1000在显卡上。2000的CPU和1000的CPU没区别,2000的显卡和1000的显卡,差别大了去。。。

主板,就一个要求,尽量可以扩展,比如2条全速显卡通道就比一条好,4条更好,方便以后扩展显卡。内存插槽尽量4条。

内存,这个目前来说,问题也不大,基本进行深度学习的话,16G的内存少不了(原则上,内存大于GPU的显存大小即可),总容量来说,可以简单认为是GPU显存数量加8G(假设系统其余程序使用8G)。比如GPU系统共24G显存,那么,配置32G总内存就可以了。内存频率来说,AMD的CPU配置3200Mhz以上双通道内存,Intel的CPU2933以上双通道内存,就差不多了。

硬盘,由于要频繁的数据读写,硬盘越快越好。PCIe的SSD硬盘是必不可少的。可以买普通的SATA SSD或者HDD备份数据,计算用的,建议上比较快的PCIe SSD.

GPU,选择NVIDIA是毫无悬念的,除非你说,你只有2000元可用,这时候,用一下AMD的矿卡RX 580 8GB加普通的SATA SSD将就下,也毫无问题。这里着重说NVIDIA GPU。

先看看可以用来进行深度学习训练的N卡,

GTX 1050 Ti 4GB, GTX 1060 6GB, 1070/1080/1080 Ti, GTX1660/1660 Ti/1660 Super, GTX 2060/2060 Super, GTX 2070/2070 Super, GTX 2080/2080 Super/2080 Ti, RTX Titan/Titan V,Quadro RTX 6000(24GB), Quadro RTX 8000(48GB)

个人用户,基本上可以买的就是这些。先说基本结论:

预算不足,浅尝辄止,这种级别,1050 Ti就可以了。或者纯CPU,google colab。

深入学习,预算不足,选择1060 6GB/1070/2060 Super,都是性价比很高的卡,值得那你拥有,比1050 Ti好太多。

已经入行,预算一般,已经进行一些项目,可以2070。

预算充足,项目多多,2080Ti,多2080 Ti并行, QUADRO RTX 8000。

在我的推荐里,你没有看到1660, Titan这两个系列,深度学习用这两个系列的卡,有点不划算。比较推荐2070这款卡,性能,价格很均衡,一般应用都能满足(如果单卡,并且主要深度学习,可考虑从CPU上省点钱下来)。1060/2060预算不足的时候,也很推荐。2080 Ti属于性能之选,有预算一定上,还多就上两块,另外,由于QUADRO RTX 8000显存大,可以用于一些特殊环境,但是一般来说,还是建议2080 Ti。

总结

简单总结下,就是如果没有独立显卡,或者NVIDIA的中高端显卡,想暂时凑合学,可以纯CPU,或者google colab,也可以用AMD的显卡玩转深度学习,AMD的显卡有时候甚至性能更好。但是如果想换显卡,或者新购电脑用于深度学习,首选2070,性价比之选1060 6GB/1070/2060 Super,预算实在不足,可以考虑1050 Ti,而且,预算不足的话,可以考虑使用低一点的CPU来省钱。性能之选是2080 Ti。另外内存要大于总显存容量,硬盘最好选PCIe SSD,主板显卡插槽要多,方便扩展。

附录

各显卡基本的性能对比:

NVIDIA GPU Deep Learning Performance

转到性价比视图,看看哪一个卡最划算:

NVIDIA GPU Deep Learning Performance Per Dollar

关于Lambda labs的性能测试:

2080 Ti Deep Learning Benchmarks

2080 Ti Deep Learning Benchmarks

显卡参数基本规格表,作为参考:

显卡型号 核心 流处理器
/RT/Tensor
频率
MHz
加速频率
MHz
位宽 显存 显存
GHz
功耗
W
Titan RTX TU102 4608/72/576 1350 1770 384 24GB GDDR6 14 280
RTX 2080 Ti TU102-300 4352/68/544 1350 1545/1635 352 11GB GDDR6 14 260
RTX 2080 Super TU104-450 3072/48/384 1650 1815 256 8GB GDDR6 15.5 250
RTX 2080 TU104-400 2944/46/368 1515 1710/1800 256 8GB GDDR6 14 225
RTX 2070 Super TU104-410 2560/40/320 1605 1770 256 8GB GDDR6 14 215
RTX 2070 TU106-400 2304/36/288 1410 1620/1710 256 8GB GDDR6 14 175
RTX 2060 Super TU106-410 2176/34/272 1470 1650 256 8GB GDDR6 14 175
RTX 2060 TU106-200 1920/30/240 1365 1680 192 6GB GDDR6 14 160
GTX 1660 Ti TU116-400 1536/0/0 1500 1770 192 6GB GDDR6 12 120
GTX 1660 Super TU116-300 1536/0/0 1530 1785 192 6GB GDDR6 8 120
GTX 1660 TU116-300 1408/0/0 1530 1785 192 6GB GDDR5 8 120
GTX 1650 Super TU116-300 1280/0/0 1530 1740 128 4GB GDDR6 12 100
GTX 1650 GDDR6 TU117-300 896/0/0 1410 1590 128 4GB GDDR6 12 75
GTX 1650 TU117-300 896/0/0 1485 1665 128 4GB GDDR5 8 75
Titan V GV100-400 5120/0/0 1200 1455 3072 12GB HBM2 0.17 250
Titan Xp GP102-450 3840/0/0 1405 1582 384 12GB GDDR5X 11.4 250
Titan X GP102-400 3584/0/0 1471 1531 384 12GB GDDR5X 10 250
GTX 1080 Ti GP102-350 3584/0/0 1480 1582 352 11GB GDDR5X 11 280
GTX 1080 GP104-400 2560/0/0 1607 1733 256 8GB GDDR5X 10/11 180
GTX 1070 Ti GP104-300 2432/0/0 1607 1683 256 8GB GDDR5 8 180
GTX 1070 GP104-200 1920/0/0 1506 1683 256 8GB GDDR5 8 150
GTX 1060 6GB GP106-400 1280/0/0 1506 1708 192 6GB GDDR5 8/9 120
GTX 1060 3GB GP106-300 1152/0/0 1506 1708 192 3GB GDDR5 8 120
GTX 1050 Ti GP107-400 768/0/0 1290 1392 128 4GB GDDR5 7 75
GTX 1050 3GB GP107-301 768/0/0 1392 1518 96 3GB GDDR5 7 75
GTX 1050 GP107-300 640/0/0 1354 1455 128 2GB GDDR5 7 75
GT 1030 GP108-300 384/0/0 1228 1468 64 2GB GDDR5 6 50

 

RTX3090, RTX3080 TensorFlow 性能

RTX3090在Linux上的TensorFlow,NAMD和HPCG性能初测

RTX3080 在Linux上的TensorFlow和NAMD性能

本文地址

小牛刀

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

Post comment