深度学习要买RTX 2080吗?

其实我连1080都没有!

深度学习要买RTX 2080吗?

先不要焦虑,我和你一样连1080也没有——不过这并不妨碍我们想得美呀!


Turing架构与Ray Tracing

全球知名挖矿设备制造大厂NVIDIA最近发布了2018年新款显卡RTX系列。还没有看发布会的同学看下边。

Official RTX 20 Series Launch Event

整个发布会花了大量的篇幅讲解Ray Tracing技术,并且用现场DEMO的形式展示了Ray Tracing技术所带来的种种好处,例如更加柔和的阴影效果,以及对透明及反光材质的逼真模拟。

常规游戏效果 (图源:NVIDIA)
开启RTX后,留意玻璃对场景火焰的反射 (图源:NVIDIA)

按照老黄的说法,这一切都离不开NVIDIA最新的GPU架构TURING,是的,就是那个传说吃苹果自杀的计算机大神图灵

Alan Turing (1912 -1954) (图源:Wikipedia)

从NVIDIA公布的信息来看,TURING架构包含三个主要模块,其中RT Core专门负责Ray Tracing。按照老黄的说法,TURING架构的一块GPU的Ray Tracing表现相当于4块VOLTA架构的V100,后者的一块售价至少要¥25000。

Turing架构 (图源:NVIDIA)

不过,我们更关心的是上图右侧的那个模块——Tensor Core。

Tensor Core

什么是Tensor Core?在2017年,NVIDIA发布了PASCAL架构的继任者VOLTA架构,其最大的亮点就是针对神经网络的运算引入了新的硬件单元Tensor Core。Wikipedia上的介绍如下:

Tensor cores: A tensor core is a unit that multiplies two 4×4 FP16 matrices, and then adds a third FP16 or FP32 matrix to the result by using fused multiply–add operations, and obtains an FP32 result that could be optionally demoted to an FP16 result. Tensor cores are intended to speed up the training of neural networks.

从介绍不难看出,Tensor Core是专门为神经网络而生。它的运算效率要超过以往的CUDA Core。因此对于深度学习技术相关从业者来说,TURING架构中的Tensor Core才是我们的关注重点。

NVIDIA Titan V是基于VOLTA架构的消费级显卡,从参数来看,Titan V包含了640个Tensor Core,针对Single Precision精度提供了13,800 GFLOPS的算力。按照官方的描述,这个速度大致是上一代Pascal架构的5倍以上。

所以,新的TURING架构中Tensor Core是个神马水平?

RTX 20系列的最佳选择

虽然VOLTA架构算力很强大,但是其主要针对的目标市场是企业市场,客户是各种数据中心等较专业领域,价格自然也非常感人。

售价¥8万的Tesla V100 (图源:京东商城)

针对消费级市场的VOLTA也有,即之前提到的Titan V。Titan V与Tesla V100有着相同的Tensor Core个数,只是在CUDA Core个数、显存大小、时钟频率与带宽上有些缩水。但是其价格也相应的降到了¥3万以内,是一个相对经济的选择。即便如此、¥2万多的显卡对于普通人来讲还是非常夸张,一般一台PC的预算也就¥1万左右。

也许考虑到TURING架构的Ray Tracing技术主要目标是玩游戏的普通人,基于TURING核心的RTX 20系列GPU的价格与前辈相比要厚道许多了。最贵的RTX 2080 TI要¥9999,退而求其次的RTX 2080则要¥6499。

RTX已在京东开启预约(图源:京东商城)

价格降下来了,可是性能如何?尤其当我们的目标是深度学习计算而不是光场渲染,有必要看下RTX 20系列的Tensor Core了!

从Wikipedia上我们可以看到RTX系列显卡的相关参数。为了方便比较,将其中较为重要的几个参数摘抄如下:

Name Architecture Tensor cores Memory size (GB) Memory bandwidth (GB/s) Single precision (GFLOPS)
Titan V VOLTA 640 12 652.8 13800
RTX 2080 TI TURING 544 11 616 11750
RTX 2080 TURING 368 8 448 8920

从参数上看,顶配2080 TI的Tensor Core个数减少了15%,显存少了1GB,显存带宽减小6%,最终的单精度浮点算力降低了14.8%。各种简配后,价格降低到¥1万。仍然不便宜,但是比起Titan V来说,性价比已经非常高了!如果我们使用 GFLOPS/1元来算性价比的话,Titan V是 0.552 GFLOPS/元;RTX 2080 TI是 1.17 GFLOPS/元。新品显然要更加划算。

在实际选择的时候,算力只是其中的一个参数。例如各种缩水的RTX 2080的性价比达到1.37 GFLOPS/元,但是其显存容量只有8GB。如果你希望在神经网络训练过程中使用更大的batch size,那么要研究下8GB的显存是否够用。

结论

基于TURING架构的RTX 20系列显卡在引入全新Ray Tracing技术处理单元RT Core的同时,也将VOLTA架构下的神经网络计算单元Tensor Core纳入其中。通过简单的比较,我们有理由相信RTX 2080 TI从投入产出比来看是当前最佳选择。需要注意的是RTX 2080 TI尚未正式上市销售,以上结论完全属于个人推测,也许不能代表产品的真实效果。