1 决定GPU性能的硬件参数

  • GPU架构
    不同款的GPU可能采用不同设计架构,比如GeForce 10系列的GTX 1080/1080Ti采用的是Pascal架构,而GeForce 20系列的RTX 2080/2080Ti采用的是Turing架构。不同架构的GPU,即使其他参数差不多,性能差别可能非常大。

  • 显存带宽
    显存代表GPU芯片每秒与显存交换的数据大小,这个值等于 显存位宽*工作频率,单位为GB/秒,该值越大,代表GPU性能越好。Geforce GTX 1080的显存带宽为320GB/秒,而它的升级版Geforce RTX 2080的带宽为448GB/秒。

  • 显存位宽
    显存位宽代表GPU芯片每个时钟周期内能从GPU显存中读取的数据大小,这个值越大代表GPU芯片和显存之间数据交换的速度越快,性能越好。Geforce GTX 1080的显存位宽为256bit,Geforce RTX 2080Ti显存位宽为352bit。

  • GPU工作效率
    代表GPU每秒钟工作次数,单位为MHz,跟CPU的频率类似。该值越大代表性能越好。

  • CUDA核心数量
    CUDA核心数量越大越好,Geforce GTX 1080的CUDA核心数量是2560个。而Geforce RTX 2080Ti的CUDA核心数高达4352个。

  • 功耗
    GPU能耗主要关乎你交电费的多少,像Geforce这种消费级的显卡一般功耗非常高,Geforce GTX 1080的最大功耗为175W,Tesla P4的最大功耗为75W。像那种数据中心大规模级别的GPU部署,低功耗的显卡一年电费能省很多。

2 如何选择适合自己的GPU

2.1 考虑显卡的算力

一般来说,进行深度学习要求算力在5.1以上,显卡的算力越高,计算速度越快,神经网络训练的也越快。如何富的流油,尽管作死的往贵的买,一分钱一分货。

Nvidia公司目前在售的一些常用GPU计算能力对比:

如何选择一块合适的用于深度学习的GPU/显卡-StubbornHuang Blog
如何选择一块合适的用于深度学习的GPU/显卡-StubbornHuang Blog

2.2 考虑显卡的显存

显卡的显存决定了一次可加载多少batch数据进显卡训练的容量,如果你的数据集输入数据是视频、图片、音频等,那么显存就必须要足够大,8G显存是目前深度学习的常用显存,不过建议最好可使用更大显存的GPU,这样每次训练的batch_size数量增加,就会减少单个epoch的训练时间,充分利用显存。

Nvidia公司目前在售的一些常用GPU显存对比:
如何选择一块合适的用于深度学习的GPU/显卡-StubbornHuang Blog

如何选择一块合适的用于深度学习的GPU/显卡-StubbornHuang Blog

2.3 考虑价格

没钱别买GPU,老老实实使用CPU慢慢跑。

有钱尽量买显存大、CUDA数量多的GPU。

我现在只想说一句:赶紧矿难!!!