近日,Google首次透露TPU细节:其执行谷歌常规机器学习工作负载的处理速度比GPU/CPU快15-30倍。这一消息表明随着人工智能的发展,以往的GPU/CPU架构已经相对落后,在这一领域除了Google,Intel也在进行相关的研发,以下则是近期ZDNet对Intel AIPG首席技术官Amir Khosrowshahi的一篇采访,雷锋网编译如下:
刚刚上任的英特尔人工智能事业部(AIPG)首席技术官Amir Khosrowshahi表示,目前所使用GPU太低级了,半导体行业需要构建全新的神经网络架构。
在出任这个新职位之前,Khosrowshahi是Nervana System的联合创始人兼首席技术官,于去年8月份被英特尔收购,但并未对外披露具体的收购金额。Nervana System利用最先进的技术来使用GPU,而且还自行研发替代了标准的NVIDIA汇编程序,从而让Nervana能够生成次优的架构体系。
在英特尔大力部署人工智能战略的大背景下,该公司所能提供的技术迅速成为了发展的核心力量。Khosrowshahi本周四向ZDNet透露:早在Nervana成立之初我们就着手研发自己的汇编程序,当时只是为了我们自己的研发需求,不过后来我们发现它要比NVIDIA官方的库快两到三倍,所以我们就将其开源了。
Nervana并不仅仅在软件方面发力,而且还创建了自己的硅靶向神经网络训练。他说道:神经网络是预先设定好操作的系列整合。它并不像人类和系统之间的交互,而是被描述为数据流图的系列指令集。
Khosrowshahi表示,在执行图形渲染过程中辅助图形处理单元的部分功能是没有必要的,比如大容量缓存,顶点处理,渲染和纹理等等。GPU中的大部分电路在部署机器学习之后是没有必要的... 这些东西会随着时间的推移而不断积累,最终产生了非常多无用的东西。
他进一步解释道:对你来说并不需要的电路在GPU芯片中不仅占据了很大一片空间,而且从能源利用率上考虑也产生了相当高的成本。神经网络则相当简单,利用小巧的矩阵乘法和非线性就能直接创建半导体来实现GPU的功能,而且你所创建的半导体非常忠诚于神经网络架构,显然这是GPU所无法给予的。
在设计思路上,CPU有复杂的控制逻辑和诸多优化电路,相比之下计算能力只是CPU很小的一部分;而GPU采用了数量众多的计算单元和超长的流水线,但只有非常简单的控制逻辑并省去了Cache,因而在需要大量计算的机器学习方面表现更好,而TPU则是专为机器学习的矩阵乘法设计和优化,因而在机器学习方面比GPU更胜一筹。
Khosrowshahi给出的答案:就是目前尚在开发中的Lake Crest,这是英特尔今年会面向部分客户提供离散加速器。但伴随着时间的推移,它将会成为Xeon处理器的最佳伴侣。
Khosrowshahi解释道:这是一个张量处理器,能够处理带矩阵运算的指令。因此指令集是矩阵1和矩阵2的相乘,不仅通过查询表运行而且这些大型的指令都是高级别的。GPU主要依靠一个个寄存器,当访问 或者跳转到]某个寄存器,所执行的是元素和元素之间的相乘,这个级别是相当的低了。
Khosrowshahi表示最近几年NVIDIA已经努力让他们的GPU对神经网络更加友好,但是他们的AI芯片依然承担了大量图形功能。他表示:如果只是依靠自己来推动芯片方面的改进,我认为未来 NVIDIA的推进将会变得越来越困难。
与之对应的,英特尔则通过收购的方式来推进人工智能。Khosrowshahi 说道:芯片行业的挑战是即将迎来颠覆性的全新架构:而现在英特尔所做的事情就是将其收入麾下。他们想要获得FPGAs(现场可编程门阵列),所以他们收购了Altera。这真的是一个非常酷炫非常神经网络的架构。」
此外 Khosrowshahi还纠正了很多人对神经网络的错误想法,他表示并不是将神经网络蚀刻到半导体上,大部分的功能依然通过软件方面来形成。
他说道:神经网络大部分都体现在软件方面。所以即使是Lake Crest,指令并不是神经网络,执行这项任务,而是通过矩阵和矩阵的相乘。芯片外层部分就是一些我们所熟知的神经网络,在经过培训之后能够根据用户需求来执行各种任务或者搜索某种参数,当你拥有神经网络之后你就能做任何可以完成的事情。
英特尔的其中一个人工智能架构将会对抗Google的定制TPU。在本周三搜索巨头表示,TPU的平均运转速度要比标准的GPU/CPU组合(比如Intel的Haswell处理器和NVIDIA的K80GPU)快15-30倍。
在数据中心计算功耗时,TPU还提供30-80倍的TeraOps/瓦特(如果未来使用更快的存储,这一数字可能还会提高)。同样在本周三,IBM和NVIDIA还宣布Big Blue在今年 5 月份开始向特斯拉P100S 提供IBM Cloud服务。