最近英特尔的动作可谓非常频繁:在学术会议上发布各种自己新算法的论文,在商业领域也是连续收购了Nervana、Modivius两家公司,还发布了最新的深度学习处理器Knights Mill,并在一份声明上声称四块Knights芯片的运算能力比四块GPU快2.3倍,剑指自己早在PC时代就已相爱相杀多年的老对手NVIDIA。哪怕在NVIDIA进行了态度坚决,甚至在语气中暗含一丝不屑的回击之后,英特尔仍然在公开声明中坚定的捍卫自己的数据,并表示去年为深度学习而研发的处理器中,使用GPU的还不到3%。
事实是怎样的呢?考虑各种因素之后我们其实真的无法明确的说,GPU与英特尔这块最新的深度学习芯片到底谁更适合深度学习开发。但是有一点是确定无疑的:英特尔的声明中所说的GPU,完全不是这块深度学习芯片本应对标的最新GPU Tesla P100,而是NVIDIA早在18个月前就已上市的Maxwell架构GPU,因此2.3倍这个数据应该是有水分的。我们能理解英特尔想要宣传自己产品的心情,但用自己的下一代产品去对标对手已经问世一年有余的上一代架构产品,是不是有点不合适?英特尔自己心里应该也明白这一点,而类似的手段英特尔也不是第一次在宣传中使用(以前英特尔就经常声称自己的集成显卡的运算能力又超过了某某NVIDIA生产的独立显卡),但英特尔祭出这种杀敌一千自损八百的宣传路数可以说明一点:那就是英特尔真的非常重视AI和深度学习这块市场,而更早之前和近期的一系列收购,也从侧面证明了这一点。
早在PC时代,两家的图形处理器就经常被拿来比较,图片来源Youtube
但是,为什么要这么执着?
深度学习市场目前活跃的主角有四个: CPU、GPU、FPGA和专用处理器,其中FPGA和专用处理器的应用其实仍处于探索阶段,真正使用它们的开发者不多,因此,这个领域市场的竞争主要就集中于GPU和CPU之间,甚至可以说,就是集中于英特尔和NVIDIA之间。但每个深度学习的开发者都心知肚明的一点是:GPU在深度学习开发,尤其是算法训练方面相对CPU确实有着非常大的先天优势,为什么英特尔执意要争夺这个看起来天生就属于对手的战场呢?要知道GPU虽然很好,但是它也是不能独立工作的,至少没有人会这么去做,因为在GPU的特性决定其上无法进行高效的逻辑运算。哪怕是NVIDIA的最新深度学习超级电脑DGX-1中,也含有两颗英特尔至强处理器(嗯,NVIDIA在很多宣传文案中故意弱化甚至忽略了这一点)。看起来,无论NVIDIA的市场做的多大,其中总会有英特尔的一杯羹,那英特尔为什么又如此心急火燎的想要攻下NVIDIA的这块阵地呢?
NVIDIA官网提供的DGX-1配置表的CPU一栏赫然写着Dual Intel Xeon E5-2698
繁荣背后的梦想与危机
要讲清楚这个问题,我们必须要把视角从人工智能身上拉远,看看英特尔的整体战略布局。实际上这个标题不是很准确。因为英特尔的业务看起来早已没有那么繁荣了。最近几年,英特尔的核心盈利业务CPU同时遭到了三个因素的狙击:PC市场增长放缓和移动市场的爆发、进军移动的尝试失败、摩尔定律逐渐逼近极限,几乎失效。单纯的卖CPU固然也能赚到钱,但只有研发更高端(贵)的芯片,形成自己领导者的形象、然后不停的把它们卖给更多的人,才能赚更多的钱,支撑公司的发展。但这几个因素的同时出现,已经让英特尔发现,如果自己仍然只是安心的守着自己的CPU业务,很快就会面临巨大的危机,事实上在过去的一年里,利润下降、裁员的新闻也一直围绕在英特尔的身边,挥之不去。
英特尔曾经是推动计算机技术向前发展的动力之一,很显然,英特尔希望自己的这个地位能一直保持下去,从去年开始,英特尔开始了缓慢痛苦但又坚定的转型。想让自己在 云计算、云存储、物联网等领域继续做一家领先于世界的公司,并在相关领域投入了相当多的注意力,并为其进行了诸多调整。
可理想很丰满,现实却总是很骨感。在高调了几年之后,曾经被寄予厚望的物联网却仿佛迷失了方向,一直没有出现真正杀手级的产品,许多曾经被看好的产品和模式都销声匿迹,整个市场都没有发展起来。甚至对未来至关重要,也是英特尔最为重视的云计算,彼时的市场也已经基本结束了初期的厮杀,亚马逊、微软、谷歌、阿里云、IBM等已经在市场站稳脚跟。英特尔要后来居上的机会已经越来越小。
2016年伴随着AlphaGo的横空出世,人工智能突然热了起来,这让大家本来在台面下默默进行的AI硬件竞争突然提升到了一个新的高度。眼睁睁的看着老对手NVIDIA由于本身就专注于优化GPU擅长的并行计算而借着这股东风混的风生水起。英特尔怎么甘心放过这个市场呢?更何况,由于目前极火的深度学习需要非常大的数据和计算量,本身就可以是云计算的重要服务对象之一。并且目前在深度学习市场FPGA尚未成气候,谷歌这样的超级大厂又喜欢自己研发专用芯片。因此可以说对于深度学习芯片来说,个人开发者及中小型企业内还有相当大的市场。这个市场内目前几乎只有NVIDIA一家成了气候的公司,英特尔想要强势进入未必没有机会。甚至即使英特尔最终无法超越NVIDIA,也能对后来者形成优势,稳坐老二。当然对于英特尔来说,他们肯定不会甘愿做老二,而一定是奔着老大的位置去的。
想揽瓷器活,有无金刚钻?
英特尔到底有没有机会绝地反击,在人工智能、深度学习领域重新夺回PC时代的领导者地位呢?我们认为英特尔其实还真不是一点机会都没有,尽管NVIDIA目前依靠着多年发展起来的GPU性能和配套的软件优化看似占尽了天时地利。但这其中,确实有着英特尔翻身的可能。
押注FPGA
去年6月,英特尔用史无前例的167亿美元巨款收购了著名的FPGA厂商Altera,当时业内对于英特尔此举的解读主要集中在服务器市场、物联网市场的布局上,英特尔自己对收购的解释也没有明确提到机器学习。但现在看来,或许这笔收购有相当程度是因为英特尔意识到了它在人工智能领域同样具有的潜力。
不管当时如何,至少现在英特尔肯定完全意识到了这笔收购在人工智能上带来的价值了,FPGA对GPU的潜力在于其计算速度与GPU不相上下,却在成本和功耗上对GPU有着显著优势。当然,劣势也有,这点我们最后再提,但是,FPGA的潜力是非常明显的。作为一个想要推向市场的商品来说,FPGA最需要克服,也是最容易克服的问题是普及程度——大部分PC都配有或高端或低端的独立GPU,对于个人进行的中小规模神经网络开发和训练来说,其实它们的性能已经基本足够。而FPGA却不是在电脑里能找得到的东西,而多见于各种冰箱、电视等电器设备及实验室中,因此想要搞到一块能用来开发深度学习的FPGA其实还挺麻烦的。可以想象,这也是英特尔将会着力解决的问题之一。
图片来源,EETimes
集成显卡——未被开发的处女地
可能有些人没意识到,其实英特尔在显卡的设计制造领域也有很强的能力,它甚至是全球最大的GPU生产商,因为目前市面上的很多低端电脑和超极本都没有配备独显,但几乎每一块英特尔的CPU中都有集成显卡,英特尔最初的意思是让这块集显帮忙进行日常的图形运算,让不需要运行高性能程序的使用者能用极低的成本得到一台能够使用的电脑。不过这几年集成显卡的性能以及越来越强,甚至已经达到了可以运行许多中型游戏的程度。Iris Pro Graphics 6200的理论性能甚至已经达到了中端独显的水平。但目前仍然没有人会用集显去做哪怕较小规模的深度学习,因为还是慢,但它们的计算能力明明就差别不大了,为什么速度还会差的这么大呢?接下来要谈到的就是我们想说的重点了:
软件!软件!软件!
现在的IT领域有一个很奇怪的现象,好多人一边说性能过剩了啊,一边看着自己手里的手机和电脑越来越卡,其实说到底这就是软件优化的问题。在同样的计算能力下,软件优化好的那一方能得到高得多的性能。GPU经过了NVIDIA这么多年的耕耘,已经有了相当完善的一套深度学习软件支持。NVIDIA的GPU对主流的深度学习平台,如Caffe、Theano、Torch等都有着极好的优化和兼容,还有自家的CuDA。而对于FPGA的优化就少了很多,因此现在基于FPGA的开发难度其实也是远远高于GPU的,这也是前面提到的另一点FPGA的缺陷。
英特尔并不是一家软件公司,提到英特尔和软件,大家想起的最多的恐怕是它制造的各种硬件的驱动程序。但AI从来不是一个简单的事。如果想要在这个领域打出一片天,只管硬件是必然不行的。事实上,英特尔已经开始显现出自己在软件和算法上的努力,上周,英特尔中国宣布了自己在深度学习算法的一项创新:“动态外科手术”算法。这说明英特尔已经开始在算法理论上刻苦钻研。能在这个领域做出创新,说明英特尔已经对其算法有了深刻的理解了,相信下一步就是将这些理解用在将来深度学习芯片的优化上。
英特尔的底气
其实英特尔在不停与NVIDIA正面对刚的时候,还在试图告诉大家一件事:
其实GPU对深度学习来说并没有那么重要。
很多人,包括我自己在第一次听到这个观点的时候,可能都是一脸WTF的表情。但是从某个角度思考来看,或许英特尔说的真的有道理。确实,当我们提起同人工智能有关的硬件的时候,更多想起的会是高大的服务器机架和上面不停闪烁的指示灯,至少也是排成一排的TitanX和主板另一端的至强CPU,但非人工智能专业的人其实很少有人意识到,人工智能的开发和应用其实分为好几个阶段,其中只有“算法训练”这一个阶段是对强运算能力有着真真切切的需求的,从数据筛选、到算法开发、效果检验,甚至最终算法的应用都不需要太强的运算能力。
当然,一个好的项目中,算法训练应该是贯穿于整个应用过程中的,但是这也就意味着,拥有超强的计算能力并不是一块用于人工智能领域的芯片所需要的唯一特征。
而这就是英特尔最大的底气来源了,它对人工智能的理解其实丝毫不弱于NVIDIA,并且很清楚的知道自己擅长什么,可以去攻占哪里。让我们再回过头去,仔细看看英特尔CEO科再奇在博客中提到的英特尔转型后打算重点关注的领域,我们会发现其中有两点尤为关键:
一:物联网中“物”的不同形态:物联网中的几乎所有设备几乎都有两个明显的特征:体积小,且依靠电池驱动。对于这些设备来说GPU的体积和功耗显然都太大了,而FPGA和专用处理芯片则适合这些设备的多。这是英特尔的第一点机会。
对于物联网设备来说,这样体积的主板算大的了,但很显然即使这样一块板子上面也是不可能塞下一块GPU的,更不用说耗电了
二:连接性,前面提到在一个好的项目中,算法的训练应该是贯穿整个应用过程的,这样可以随时为消费者提供最好体验的服务。但是如果要将所有算法都集中于本地训练,不仅会面临计算瓶颈的问题,也容易面临从单个用户处收集到的数据量太少的尴尬。我们暂时不考虑很久以后可能出现的基于小样本的无监督学习的AI(那其实已经跟人差不多了),在目前AI的发展状况下,将所有数据集中于云端进行计算显然是更理性且有效的做法。而这就对通信提出了极高的要求,而英特尔恰巧在这个领域有着相当多的积累!虽然英特尔的通信部门连年亏损,但在现在的形势下,它却意外地有了新的价值与潜力。
以上两个业务都是NVIDIA从来没能进入过的领域,而它们同样是目前AI需要的。英特尔发现了这些领域,虽然这并不意味着它能在这些领域做好并获得成功,但这确实给了英特尔向NVIDIA和一众竞争者叫板的信心。而它现在的动作除了直接的竞争,也是为了告诉大家:我们在人工智能领域从来不虚NVIDIA,走着瞧!
勇于面对变化的人,运气都不会太差
英特尔确实面临着前所未有的挑战,但这其中并非没有机会。幸运的是,英特尔看到了机会,并且开始努力追赶这些领域中先行者的脚步。移动浪潮的来临曾让很多传统互联网大厂面临艰难的局面,但它们中坚定的进行了转型的那些,今天大多数到底是活了下来,有些甚至还过得不错。英特尔也是它们中的一员,它曾经是计算机行业的领军企业,而现在,英特尔的CEO科再奇也表示过希望英特尔能继续利用摩尔定律的价值,带领行业向前推进。目前的形势不容乐观,但一旦找到了正确的道路,英特尔或许仍有机会将局面完全扭转。