blizzard 2017-12-26
作者 | 鸽子
今天的朋友圈,被英伟达给炸了。
怎么回事呢?
话说,英伟达这货最近悄然修改了用户许可协议(EULA),禁止在数据中心使用消费者级显卡GeForce做深度学习。用什么呢?强制用其高端处理器Tesla系列。
GeForce和Tesla这两者有什么区别?
来看一组数据:
GeForce GTX 1080: PASCAL; 2560 CUDA cores; 8 TFLOPS (single-prec); 8 GB GDDRX5 320 GB/s; max 180 W.
Tesla P100: PASCAL; 3584 CUDA cores; 9.3 TFLOPS (single-prec); 16 GB HBM2 732 GB/s; max 250 W.
解读一下,业内专注于AI芯片的某资深人士告诉AI科技大本营,论单卡,geforce的性能还大于tesla,虽然geforce阉割掉了一些功能,但是频率一般比tesla高。阉割掉的功能,很多都跟深度学习关系不大,比如ecc内存,double数据类型。
论起GeForce做深度学习,“满大街1080ti训练神经网络性价比不要太高”,这位资深人士强调到。
反正一句话,GeForce和Tesla架构类似,甚至更好用,但后者价格是前者的10倍。你买不买?
嘿嘿不好意思,只要你是数据中心,不买也得买!
这是赤果果的敲诈吗?凭什么不能用便宜的?你英伟达这是利用市场主导地位强制用户买单,给用户玩阴招吗?
当然,需要指出的是,英伟达仅仅限制在数据中心使用GeForce做深度学习,一般的高校和研究所等非商业用户,并不会受什么影响。
甭管什么情况,反正后果是,一石激起千层浪,海外各大社区开始炸锅。
论坛社区的言论主要分为三派:谴责,冷静,力挺。
营长就这三方观点,分别扒了一扒,如下:
三方观点纷争:谴责,冷静,力挺
强烈谴责派,Like this:
“只要是数据中心做深度学习项目就必须购买高价的Tesla才行?便宜又好用的GeForce系列就这样不让用了?”
“凭什么仅仅因为放在数据中心,价格就要上涨10倍?”
“这让初创公司怎么活啊?”
“阴险的英伟达,下一步估计会让cuDNN之类的基础软件在GeForce上跑起来一色的bug,这样,用户就没法拿GeForce偷偷做深度学习了。”
“准备转向英特尔的Nervana和AMD了。”
冷静分析派,Like this:
“到时候Volta或者更新架构的GeForce出来后,估计只有Cuda Core,没有Tensor Core。CuDNN会针对Tensor Core做性能优化,因为Tensor Core本身并非给3D图形准备的。”
力赞力挺派,Like this:
“NVIDIA这么做无可厚非,也很难有人竞争得过。这不过是个陷阱,让这些芯片厂商以为服务端芯片有机可图,大肆押注在这个领域,然后NVIDIA自己腾出手去做边缘和端上智能。即便后面硬件厂商做出了产品,nvidia也有市场价格等多种手段对付。”
“NVIDIA至少在五年前就开始投入研发volta架构,前后投入30亿美金,无论远见还是执行力,都要领先对手至少三年以上。我猜测NVIDIA还有后手,下一代GPU还会有更强的改进。”
无论论坛的声音是怎样?一个不容忽视的现实是,就在英伟达威震四方之际,英特尔,AMD正在奋起直追,而且相比英伟达,他们各有优势。
英伟达的市场垄断地位到底还能维持多久?在英伟达日渐嚣狂的气焰下,英特尔和AMD当下究竟有着怎样的潜力?到底决定深度学习芯片霸主地位的关键点是什么?
来看看大神Tim Dettmers笔下的芯片三国杀。
以下内容来自Tim Dettmers的一篇文章,AI科技大本营编译(翻译 | 林椿眄)
AMD,Nervana加入深度学习芯片竞争,便宜专一又强大,英伟达的霸主地位到底还能保持多久?
随着NVIDA Titan V显卡的发布,我们现在进入了深度学习的过渡阶段。
目前深度学习芯片市场的竞争已经进入白热化,AMD和Intel Nervana公司都有望在新一年挑战NVIDA的霸主地位。而对于消费者来说,我无法向他们推荐哪一款硬件最理想。最谨慎的选择是待目前硬件的过渡期过后再做出选择。这可能需要3个月,也可能需要9个月。
那么为什么我们才刚刚迈入深度学习硬件的过渡期呢?
NVIDA公司豪言已出,要在行业竞争出现之前,就实现其在深度学习硬件市场的垄断地位,并通过圈住大量的财富来捍卫之后1至2年的领先地位。新一代Titan V显卡的售价为3000美元,对于以张量为计算核心的深度学习领域来说,它将很好地满足深度学习的性能要求。
但是,由于Titan V显卡在性价比方面很糟糕,对客户的购买吸引力并不大。然而,目前市场上缺少替代品,对于深度学习领域的研究者来说,昂贵的Titan V就成了唯一的选择。
行业间的竞争非常激烈。我们所拥有的AMD硬件现在已经超过NVIDA硬件的性能了,并计划将硬件组装起来生产出一些实际可用的深度学习软件。随着这一步的实现,AMD硬件的性价比将全面超越NVIDA显卡,而AMD硬件也将成为新的行业领先者。
但是,NVIDA公司有钱啊,强大的资金优势,足以与AMD抗衡。所以,竞争得加剧,将使得我们未来可以看到更多高性价比的NVIDA显卡。
值得注意的是,竞争只有在AMD公司能够进一步成功地推进深度学习软件开发才能实现。如果AMD公司失败了,那么NVIDA公司将继续保持目前在硬件领域的领先地位, 而NVIDA显卡也将继续保持高价。
以神经网络处理器为核心硬件的Intel Nervana公司是深度学习硬件市场的另一竞争者。Intel Nervana公司的硬件有其独特性,对CUDA开发人员有着巨大的吸引力。当我想要为深度学习优化编写CUDA的内核时,以神经网络处理器为核心的Intel Nervana硬件能够解决我遇到的问题。这是第一个真正意义上的深度学习芯片。
一般来说,单就芯片性能的排名,将是Nervana>AMD>NVIDA。
NVIDA公司硬件必须同时服务于游戏/深度学习/高性能计算等多个领域的需求,AMD公司硬件只需要为游戏/深度学习服务,而Nervana的硬件可以专注于为深度学习服务。这也是Nervana的巨大优势所在。对于深度学习硬件来说,设计的构架越集中,深度学习的芯片就越少。
然而,真正的赢家并不是纯粹靠性能表现来决定的,甚至也不能简单地靠成本来衡量。这是由成本/性能+社区+深度学习框架共同决定的。
让我们来详细地看看Nervana,AMD以及NVIDA公司的目前各自的情况。
Nervana:神经网络处理器
图片来源:The Verge
Nervana硬件的设计非常特别,这主要是由于其大型可编程缓存(类似于CUDA共享内存)决定的。Nervana每个芯片的尺寸是GPU的10倍,而每个单元的计算性能是GPU的50倍。这些能够设计缓存中的深度学习算法和模型,加速至少一个数量级的推理进程,并且能够轻松训练带有小型高速缓存的深度学习模型(例如,具有200个单元的多层LSTM模型)的千兆字节数据。这也对研究深度学习的初创公司和大公司都非常有吸引力。另外,由于Flexpoint这种特殊的数据类型的存在,更多的数据可以储存在缓存/RAM中,并且这种方式的计算速度更快。
以上所述的这些都意味着,比起现在的NVIDA 的GPU来说,使用Nervana芯片的研究人员能够获得10倍的计算加速。
但是,Nervana有一个很大的短板,就是它目前的社区及软件功能还不完善。
对于普通用户和研究人员来说,社区的重要性是不言而喻的。没有社区,我们看不到缓存中的算法,也看不到好的软件框架,芯片很难正常工作。
就稳定性而言,Nervana的深度学习框架是否足够稳定,目前来看还是个未知数。
软件在硬件之前,如果Nervana只能够运行完美的芯片而没有办法有效地推动软件功能和社区发展,那么它将在与AMD和NVIDA公司的硬件市场竞争中落于下风。
社区和软件功能问题与价格紧密相关。如果神经网络处理器的价格太高,高到一些研究人员负担不起它的价格,那么社区的开展和建设也是问题。而如果只是为了满足行业的需要,那么,完善健全的社区群体也无法建立。
虽然工业界是硬件公司的大客户,和主要收入来源,但研究者是社区的主要驱动力。只有当一款产品是研究者能够负担得起的,社区和软件的发展就会随之而来。 通常,超过3000美元的东西都没法让大多数人接受,而2000美元以上的价格也得慎重考虑,需要的话可以进行折扣吸引广大消费者并让其建立一个健康的社区。
一个价格为2000美元的神经网络处理器对Nervana公司来说是可以接受的。而低于1500美元的话也将使Nervana在2-3年时间内成为硬件市场领导者。而价值1000美元的神经网络处理器则会让Nervana公司在与NVIDIA和AMD公司之间的竞争变得非常艰难。此外,软件的开发在这里甚至不是一个问题,因为慢慢地它也会自动产生。
所以,如果Nervana神经网络处理器的价格低于2500美元,我个人会建议选购,因为他们是远远优于GPU的深度学习硬件,能完成NVIDA不能完成的任务。2500美元,至少是我对良好硬件可接受价格的临界点。
对于平常的消费者来说,价格是重要的,如何处理社区也是个至关重要。如果在短时间内我们没有看到英特尔向社区注入资源来启动一个坚实的软件机器的话,那么神经网络处理器的市场很可能会停滞不前。不幸的是,英特尔公司的社区管理不善由来已久。如果这种情况再次发生的话,那就太可惜了,因为我非常希望看到Nervana公司在硬件市场取得成功。
总之,如果Nervana的神经网络处理器价格低于2000美元,并且在发布之后的最初几个月内能看到强大的社区和软件开发。那么,Nervana的神经网络处理将成为硬件市场一大赢家。
如果它的价格更高,或者社区支持无法满足,那么,即使神经网络处理器很强大,成本/性能和便利性方面也可能无法超越其他解决方案。如果软件和社区的建设失败,或者如果神经网络处理器的价格为4000美元,它可能会失败。 如果以2000美元以上的价格销售,那么研究者希望能够得到可观的折扣。
AMD:便宜又强大,谁用谁知道
AMD的显卡还是很不可思议的。
显然,Vega Frontier Edition系列显卡与NVIDIA的同类产品是不相上下,而从Volta和Pascal的不偏不倚的基准来看,如果液态冷却的话,Vega Frontier的性能会比Titan V相比更优。
值得注意的是,Vega是基于上一代的硬件架构研发的,而Titan V是一种全新的硬件架构,这就意味着Vega架构将更具稳定性。此外,AMD公司也将于2018年第三季度发布的全新架构,将32位浮点数转换到16位浮点数来提升深度学习硬件的性能。这是一个非常简单而强大的策略。这种芯片在高性能计算中是用不到的,但是对于游戏玩家和深度学习社区来说,这种芯片将会很有用,因为16位浮点运算非常简单,且开发成本也很低。
单就性能而言,他们无法与Nervana的神经网络处理器竞争,但其性价比可能超过市场上的所有产品。你可以得到一个700美元的液态Vega Frontier,而它的性能可能就比3000美元的Titan V差一点,可谓是物美价廉。
然而,它的问题还是在于软件开发方面,因为即使你拥有这个强大的AMD GPU,但没有一个主要的框架能够支持AMD GPU,那它几乎是无用的。
软件方面的问题使得AMD将陷入了僵局。他们曾经想要放弃OpenCL for HIP,但目前又正式推出并支持OpenCL路径。如果他们推出HIP,并且如果在未来9个月内在市场上投放了一些好的深度学习软件(不仅包括用于卷积和矩阵乘法的库,还有完整的深度学习框架,例如HIP对PyTorch框架的支持等),那么他们在2018年第三季度发布的新GPU有可能打败所有竞争对手。
所以总的来说,如果AMD在软件开发方面有所建树的话,它可能是主流的深度学习的最佳硬件选择。
NVIDA: The Titan
NVIDA在硬件市场的地位,目前看来是最坚固的。他们拥有最好的软件,最好的工具,良好的硬件,强大的社区,并能将这些优势很好地集成在一起。
但NVIDIA所面临的问题是,他们必须服务于多个社区;高性能计算人员;深度学习人员和玩家,这对他们的硬件来说是一个巨大的压力。由于设计这些社区定制的芯片代价昂贵,所以NVIDIA当前的战略是设计一种适合所有人使用的硬件架构。但是,直到目前它在这方面的工作还没取得进展,而Titan V也只是其开发的一个次优的替代品。
随着新兴的竞争对手的加入,NVIDIA有两个选择:一个是继续推销当前的产品,直至最终破产,或者自行开发专用的深度学习硬件架构,将追求资源作为发展的第一战略,将专业性作为追求的第二战略。然而,一个新的设计将需要一些时间,在此期间NVIDIA可能会失去行业的领先地位。
总而言之,NVIDIA的行业领先地位正在受到威胁,但它拥有与新兴玩家对抗的资源和专业知识。我们将来也可能会看到更便宜的NVIDIA显卡以及更专业的深度学习芯片。但是,如果NVIDIA不降低它的价格,它可能会在短期内失去硬件市场行业的领先地位。
结论
营长来总结一下,在如今的深度学习硬件的过渡时期,购买深度学习硬件是没有意义的,也许我们很快就会有更便宜的NVIDIA显卡,可用的AMD芯片以及超快的Nervana神经网络处理器。
如今,英伟达突然来这么一招,限制数据中心对于GeForce的使用,你怎么看?英伟达还能保持继续霸主之位吗?
翻译部分原文链接:
http://timdettmers.com/2017/12/21/deep-learning-hardware-limbo/