在 Titan V 发布后,我们进入了深度学习硬件的待定状态。NVIDIA 深度学习硬件的卖主是否被替代还不明晰。AMD 和 Intel Nervana 都有取代 NVIDIA 的机会。所以,对于用户,我不会推荐此时去购入任何硬件。
最为审慎的选择是在这个硬件不稳定状态过去之后。这可能需要 3 个月到 9 个月的时间。所以,为何我们要在现在进入深度学习的硬件竞争呢?
NVIDIA 已经决定自己需要投入大量资金来在竞争者出现时巩固自己的垄断位置。他需要资金在接下来 1 到 2 年内阻击竞争者。这其实在 Titian V 价格定在 $3000 的选择上反应出来了。Titan V 有 TensorCores 一个新的深度学习特征,但是同时,其成本/性能比是很糟糕的。这让 Titan V 不大吸引人。但是由于没有其他替代品,人们目前还是只能“吃到餐桌上有的食物”。
竞争非常激烈。我们有 AMD 其硬件现在已经优于 NVIDIA 的了,并且他也计划让自己能够生产出某些深度学习软件也是可用的。所以,成本/性能比会轻松地超过 NVIDIA 的产品,AMD 将会变成新的标准。NVIDIA 的资金优势会帮助战胜 AMD 使得我们在未来能够看到非常便宜的 NVIDIA 卡。注意,这件事出现建立在AMD 具备这样的能力基础上——如果 AMD 做不到这点,NVIDIA 显卡会更昂贵,AMD 也会失去走上王座的机会。
还有一个竞争者:来自 Intel 神经网络处理器(NNP)。由于其具备的几种独特的特性,NNP 具备相当大的实力。这些新的特性让我“垂涎”——他们就是我们作为 CUDA 开发者想要的。NNP 解决大多数问题,我在写 CUDA 核,这可以为进行深度学习优化。这个芯片是第一个真正的深度学习芯片。
简言之,对 1-chip vs 1-chip 的排名,我们将会看到 Nervana > AMD > NVIDIA,因为 NVIDIA 需要服务游戏/深度学习/高性能计算,而 AMD 仅仅是要服务游戏/深度学习,而 Nervana 能够聚焦于深度学习——这是大的优势。更加聚焦的架构,会使得深度学习芯片上的垃圾更少。
然而,最后的赢家不是由纯粹性能决定的,甚至不是由纯的成本/性能比决定。这是由成本/性能比+社区+深度学习框架来决定的。
让我们看看每个产品自己人所处的状况:
Nervana NNP
Nervana 设计非常独特主要是因为他自己的大的可编程的caches(类似于 CUDA 的共享内存)这个每芯片上 10 倍于 GPUs 且每计算单元 50 倍于 GPUs。这样可以设计cache 内算法和模型。这样能够加速至少一个数量级推断,我们能够轻易训练数以 T 计的数据而使用小的 cache 内深度学习模型,比如有多层 LSTM 模型。这样的芯片对于创业公司和大的公司来说都是非常有吸引力的。由于特殊的数据类型,Flexpoint,我们能够存储更多的数据在 caches/RAM 并计算更快速所以能得到更多的好处。所有这些都意味着 10 倍与当前 NVIDIA GPUs。如果主要的障碍能够被解决:社区和软件,那么就能够达到这样的状态。
对于正常用户和研究者们,这取决于社区。没有社区,我们不会看到 cache 内算法。没有社区,也看到好的软件框架,使用 芯片也非常困难。每个人都希望使用坚实的深度学习框架,所以如果 Neon,Nervana 的深度学习框架不能够。软件领先与硬件 。如果 Nervana 仅仅给出更好的芯片而不去推动软件和社区方面,那么他会败给 AMD 和 NVIDIA。
社区和软件问题其实与价格关系密切。如果价格过高,学生们都买不起 NNP 那么没有社区会在其他进行开发。仅仅面向工业界其实不能获得健壮的社区。尽管工业界能够产生主要的收入,学生其实才是社区的主要驱动力。所以如果价格合理,学生能够付得起,那么社区和软件也会随着改善。任何超过 $3000 的产品都会失败。任何超过 $2000 的临界值,需要针对学生进行特别的折扣来打造健壮的社区。$2000 的 NNP 是可以接受的。任何低于 $1500 的NNP让 Nervana 成为市场的领导者至少 2-3 年。而$1000的 NNP 会让 NVIDIA 和 AMD 难以竞争——软件在这样的情况下不会成为问题,自然解决。
我个人会转移到 NNPs 如果价格低于 $2500。因为对深度学习来说,他们优于 GPUs,我能够做到用 NVIDIA 硬件无法做到的事情。如果超过了 $2500,那么达到了我对于好的硬件的痛点。我攒了好多钱来购买硬件——好的硬件对我来说非常重要——但是也是要生活的。
对通常的消费者来说,不仅仅价格是重要因素,同样社区运作也是关键的。如果我们看不到 Intel 立马为社区诸如资源来启动一个坚实的软件,那么NNP其实可能就会停滞不前最终消失。不幸的是,Intel其实有着一个社区管理不善的优良历史——如果真的这样我会觉得非常遗憾,因为我真的很希望看到 Nervana 的成功。
总结一下,我们将会看到 Nervana NNP 如果价格定在 $2000 以下,并且我们看到强大的社区和在其发布后的头几个月中软件开发,Nervana NNP
将会成为明显的赢家。若是过高的价格和过少的社区支持,NNP 会很强大,但是不一定能够度过其他解决方法在成本/性能和便利性的挑战的难关。如果软件和社区力量均失败了,或者NNP价格达到了 $4000,很可能就会失败。而对于超过 $2000 的价格需要足够的折扣来让学生激活 NNP。
AMD:便宜和强大——如果你能用起来
AMD 显卡是很难以置信的。Vega Frontier Edition 系列明晰地超过了 NVIDIA 对标产品,并且来自 unbiased benchmarks of Volta vs Pascal,看起来 Vega Frontier 会同等于或者优于 Titan V 如果使用水冷。注意到 Vega 基于旧的架构,而 Titan V 是新的架构。新 AMD 架构在 2018Q3 发布会更大地提升性能。
AMD 希望提升深度学习硬件通过从 32-bit 浮点切换到 16-bit 浮点。这其实是一个非常简单粗暴的策略。他们的芯片对于高性能计算来说没有太大用处,但是对于游戏和深度学习社区来说足够坚实,而开发成本也会降低因为 16-bit 计算是很直接的。
他们不能和 Nervana NNP 竞争,但是成本/性能比可能会在市场中取得最佳。你可以用一个 $700 的水冷 Vega Frontier 这个可能就比 Titan V 只差一点点。
问题在于软件。即使你有了一个强大的 AMD GPU,你很难去使用它——没有一个主流框架支持 AMD GPU 非常好。
AMD 在不明确状态中——软件的不明确状态。看起来他们希望要丢弃 OpenCL 为了 HIP。但目前官方仍然推进和支持 OpenCL path。如果他们用 HIP 来推进,且如果他们推出某些好的深度学习软件到市场上(不仅仅是那些卷积和矩阵乘法的库,而是完整的深度学习框架,比如 HIP 支持 PyTorch)在接下来的 9 月中,那么他们新的GPU的发布在 2018Q3 有足够的潜力击败所有竞争者。
总结一下,如果 AMD 在软件方面有所作为的话,那么它可能会变成统治性深度学习硬件解决方案。
NVIDIA:巨人
NVIDIA 的位置是坚实的。他们有最优的软件,最好的工具,他们的硬件很好,社区庞大且强大,整合良好。
NVIDIA 主要的问题是他们需要服务多个社区:高性能计算人群,深度学习人群和游戏爱好者们,这其实是对硬件巨大的压力。设计出定制化服务的芯片非常昂贵,NVIDIA 的策略目前是统一设计包含的架构。这个其实使得 V 变得中庸起来。
对于已经出现的竞争者,NVIDIA 其实有两个选择:1 压低芯片的价格直到竞争完结,2 开发自己的专有深度学习硬件。NVIDIA 有资源去推进第一个策略,同样也有专家来完成第二个策略。新的设计会花费一段时间,这段时间 NVIDIA 可能会丢到自己的王座。所以我们可能会看到两个策略同时进行:饿死竞争者使得 NVIDIA 能够竞争到自己深度学习芯片上市。
总结一下,NVIDIA 王座受到了威胁,但是他有资源和专业能力抵抗出现的竞争者。我们可能会在未来看到廉价的 NVIDIA 卡,芯片更加针对深度学习。如果 NVIDIA 不去降低价格,他可能会将王座拱手让人。
总结
深度学习硬件不稳定状态意味着现在不是投入深度学习硬件的时候,但是我们会有更加便宜的 NVIDIA 显卡,可用的 AMD 显卡和非常快的 Nervana 显卡。这是令人兴奋的时刻,我们将会从中受益。但是现在,我们要有耐心。必须等待。