返回 登录
0

详解英特尔AI布局

一场收购


8月9日,英特尔高价收购了一个仅有48人的AI团队,所因为何?相信英特尔有自己的考量。

当年为了追逐IoT的步伐,英特尔错失了移动芯片市场,而NVIDIA的GPU在人工智能的深度学习领域却展现出令人意外的技术优势,英特尔在AI芯片领域还迟迟没有动静。此次收购Nervana可谓是英特尔弯道超车的明智之举,将Nervana的软件架构部署至英特尔的硬件上,此次合作对Nervana和英特尔来说是双赢的。

收购当日,Nervana联合创始人Naveen Rao便表示:“融资对我们来说比较容易,但是被英特尔收购,意味着能使用曾经触不可及的技术。” 此处的“技术”是指硬件层面。

Nervana是专注于软件的公司,其业务是基于云的深度学习服务。其主要深度学习框架Neon在主流的深度学习网络例如AlexNet、VGG、GoogLeNet上均性能优异。Nervana表示,Neon的计算速率是Caffe的两倍,易用且可扩展,支持CNN、RNN、LSTM、GRU、BatchNorm等模型。Neon在卷积计算时采用了Winograd算法,在数据载入层面也做了多项优化。

图片描述

如今,有了英特尔的加持,Nervana正计划推出其针对深度学习算法的定制芯片Nervana Engine。神经网络训练依赖海量数据,因此效率成为瓶颈。单纯地通过增加处理器的数量来扩展其性能或许可以解一时之需,但当处理器达到一定规模,内部I/O又成为瓶颈。

对此,英特尔中国研究院院长宋继强表示:“Nervana可以更高效地定义内存访问带宽和计算密度,应对数据量增大的需求。同时可以让多个节点并行支持大模型的训练,实践中,我们看到性能近乎线性扩展。”

与Tesla P100类似,Nervana Engine也采用16-bit半精度浮点计算单元和大容量高带宽内存(HBM,计划为32GB,是竞品P100的两倍),摒弃了大量深度学习不需要的通用计算单元。相比GPU,训练性能可提升10倍。

图片描述

在硬件基础上,Nervana于今年11月推出了Graph平台。该框架由三部分组成:用于创建计算图的API、用于处理常见深度学习工作流的前端API(目前支持TensorFlow和Neon)、以及用于在 CPU/GPU/Nervana Engine上编译执行计算图的转换器API。

AI发展的“良性闭环”


英特尔收购Nervana后,正式提出AI发展的“良性闭环”概念。英特尔提供从嵌入式端到云端、从底层到应用层的完整实现方案。

图片描述

从上图可以看出,在最底层的硬件层面,英特尔处理器能为各种AI硬件提供支持。对于如手持、移动设备等前端设备,英特尔推出Movidius硬件平台,以满足前端设备功耗、预算、尺寸等限制。Movidius是英特尔于2016年9月收购的一家从事计算机视觉(CV)方向的公司,其CV芯片可为智能手机、平板电脑、无人机、VR/AR头显、可穿戴设备及嵌入式物联网设备提供支持。同时,在面向硬件优化的过程中,英特尔为开发者提供相关函数库。具体包括:针对数学运算的数学核心函数库(英特尔MKL)、针对数据分析的数据分析加速库(英特尔DAAL)、针对通讯加速的库等等。在框架层面,英特尔支持常用AI框架,这意味着开发者不需要迁就底层硬件而改变使用习惯,就能使用英特尔的各项架构支持。更上层的,英特尔提供深度学习SDK、Nervana等平台。

对于英特尔的主营业务,处理器制造来说,用户有了更多元化的选择。

图片描述

至强(Xeon)是目前英特尔产品中最经典、也是使用最广泛的平台,是一个能够针对不同种类的工作进行计算支持的平台。至强融核(Xeon Phi)是Xeon的进阶版,加入了众核的概念。在Xeon的基础上加入多个64核、74核的加速器,使其可以在软件的配合下大幅提高计算性能。对于例如AlexNet这样的网络,在经过针对至强融核进行软硬件结合的优化之后,性能提升了400倍。可见软硬件结合能够大幅提升深度神经网络的训练效率。

同时,若可以确定系统的应用领域是某种工作负载,则可以采用FPGA或Nervana这类定制化的硬件架构作为支持。FPGA可以用来做网络计算、视频处理、语音等方面。

与FPGA不同的,也是人工智能从业者最为关心的,与Nervana Engine配合推出的Lake Crest硬件架构,是专为深度学习这种大规模运算及需要实时缓存的系统设计的架构。

图片描述

Lake Crest是主要基于张量运算的架构,矩阵运算属于张量运算。图中绿色部分是专门针对矩阵运算的处理单元。同时运用Flexpoint技术,一个基于定点与双精度浮点之间可以变化的技术,来提供较高的并行化计算能力,计算密度是目前最好的硬件加速水平的十倍。同时,由于计算单元专门针对张量运算所设计,所以功耗较低。

上图周围的四个黄色块为高带宽内存,通过专用的内存访问接口连接到主芯片,中间灰色大区域可以看作一个芯片。这些内存是直接由软件管理的,因此整个计算中不存在Cache,也就不存在不可预测的Cache miss,何时、去哪里读取数据完全由程序控制。

单靠一个这样的芯片可能处理不了所有的深度学习训练任务,针对特殊的需求,可以采取多个芯片协同工作的方式。多个芯片之间的互联靠RCL,RCL是英特尔专门定制的Interchip Link,它的速度比传统的PCIE快20倍,而且是双向的数据带宽通道,能够达到8TB/s。借由RCL,一个芯片最多可以与12个芯片互联,以组成训练所需的规模较大的超网格。

英特尔的软件部署


在软件层面,宋继强表示:“目前的深度神经网络还有很多技术点有待突破,神经网只是实现人工智能的一个工具,但未必是最后的工具。”

对于AI算法,英特尔目前正致力于如何使系统实现更少的数据及人力依赖;如何让模型更稀疏;如何压缩模型使之更易存储;如何对模型剪裁使其运算量最少;如何使计算精度下降,甚至降至一位。

笔者有幸采访到英特尔软件与服务事业部副总裁、产品开发部门总经理 William A. Savage 先生,与英特尔软件与服务事业部副总裁、机器学习与翻译部门总经理李炜先生。

图片描述

英特尔软件与服务事业部副总裁、产品开发部门总经理 William A. Savage 先生

图片描述

英特尔软件与服务事业部副总裁、机器学习与翻译部门总经理 李炜先生

当被问及英特尔的AI“良性闭环”对广大开发者有何意义时,William表示:“我们在帮助软件开发者从硬件差异中隔离出来,开发者不需要考虑选择Nervana架构、FPGA架构、还是至强融核,他们只需要考虑用什么框架即可。”

关于明年英特尔的下一步动作,William表示:“我们会在2017年推出Nervana ASIC平台,它是针对深度学习算法中的两个核心运算,矩阵乘法运算和卷积运算而设计的。(李炜先生补充道:此处仅说明两个主要运算,相关运算有十余个。)若除以上两种运算外,还要满足如数据处理等其他功能需求,则至强融核更为合适。”

对于硬件设计进度无法跟上算法更迭速度这一问题,二位均提出了自己的解读:

William:“这正是大家关注Nervana ASIC以及FPGA的原因。这两款设计芯片的周期远小于设计一个CPU,从这个角度讲,这两款芯片可以更好地适应算法的变化。所以英特尔采取的策略是,先做ASIC,待算法逐步稳定,再将其放置新的CPU上。”

李炜:“其实深度学习的算法可以分为两部分,一部分是会变的,一部分是相对可靠的。深度学习算法中的基本操作、任务计算、卷积计算等在这些年间一直没有大的变化,所以接下来的深度学习技术不会在一夕之间完全改变。”

英特尔对于Nervana在未来的技术发展也具有非常坚定的信心。William在接受采访时说:“Nervana在被英特尔收购之前就已经很成熟,我们着重参与的是将其技术推向市场的过程。”

结语


本文从英特尔收购Nervana谈起,详细讲述了英特尔在AI方面的战略布局,最后以笔者对英特尔两位软件相关VP的专访作为结尾。笔者惊诧于英特尔AI 闭环中产品门类之多,覆盖之广。但无论如何,各巨头在AI领域的赛跑才刚刚开始,最终几家独大,尚且未见端倪。


【CSDN_AI】热衷分享

扫码关注获得更多业内领先案例

图片描述

评论