近日,Intel 宣布了在 AI 领域的一个新动作:新近收购的 Habana 的系列产品将取代原定的服务器端 AI 加速芯片 Nervana Spring Crest NNP-T,而 Spring Crest NNP-T 系列将停止开发。本文将对 Intel 的这个决定做深入解读。
 
  Intel 收购 Nervana:Intel 在 AI 领域的第一个大动作
 
  我们首先分析一下 Nervana Spring Crest 系列产品的由来。为此,我们需要先介绍一下 Nervana Systems 这家三年前被 Intel 收购的公司。
 
  Nervana Systems 成立于 2014 年,是一家在 AI 尚未真正成为风口时就宣布做 AI 底层架构的初创公司,其投资人包括 DCVC、Lux 等顶级硅谷风投。2015 年,Nervana 在深度学习领域发布了其主要产品,即深度学习底层框架 Neon。Neon 是一个为深度学习仔细优化的底层框架,在算子层级拥有很高的效率。Neon 最初是运行在 Nvidia GPU 上,然而其性能比起 Nvidia 的亲儿子 CuDNN 都要强不少。2015 年正是 Caffe 等深度学习框架火热的时候,而 Neon 凭借其卓越的性能自然获得了大家的关注。
 
  在凭借 Neon 一炮而红后,Nervana 在 2016 年初宣布了其更加野心勃勃的计划,即 Nervana Cloud。在 Nervana Cloud 中,Nervana 将会把 Neon 框架运行在其为 Neon 专门优化的 Nervana Engine 芯片上。
 
  Nervana宣布,这种组合的性能将达到Nvidia Titan X的10倍。可以说,在2016年初,当大多数半导体公司仍处于AI的边缘时,Nervana宣布了一项重大计划。时代的最前沿。此外,Nervana对市场的判断非常准确:因为不久之后,AI芯片成为整个行业公认的发泄者,Nervana在2016年下半年被英特尔以4亿美元的价格收购。在收购时,Nervana没有发布任何芯片细节:我们可以估计,在收购时,Nervana仅具有一个芯片体系结构设计,没有真正的芯片原型,也没有芯片产品。
 
  Nerv Nervana被英特尔收购后,其产品逐渐整合到英特尔的产品路线图中。但是,Nervana设想的Nervana引擎运行不顺利。收购之后,Nervana Engine更名为Crest系列。 2017年初,英特尔发布了Nervana Lake Crest的一些详细信息,并宣布将于2017年上半年完成芯片。到2018年中期,英特尔宣布Lake Crest只是原型产品的试用版,并且正式发布。名为Spring Crest的芯片产品将于2019年正式发布。当时,Lake Crest的性能指数为12核,32GB HBM内存,峰值计算能力为38TOP / s。
 
  在 2019 年八月的 Hot Chips,Intel 又发布了 Nervana 芯片的相关更新:Nervana 将发售两种芯片,一种是针对服务器端训练应用的 Spring Crest NNP-T,它将具有 119TOPS 的峰值算力,并且通过 CoWoS 高级封装技术实现多芯片互联;而另一款则是针对边缘计算的 Spring Hill NNP-I,功耗 10W,能效比为 4.6TOPS/W。然而,在 2019 年我们并未得到 Spring Crest 系列真正商用的消息,直到最近才得到它已经被取消的新闻。
 
  靠谱的 Habana
 
  相比产品迟迟不能量产的 Nervana,来自以色列的初创公司 Habana 可以说是实在也靠谱多了。
 
  Habana 的芯片分为两个系列,即针对训练的 Gaudi 系列和针对推理的 Goya 系列。与 Nervana 最大的不同在于,Habana 的两个芯片系列目前都已经有成品芯片供客户使用,目前据悉已经收获了一些数据中心客户的青睐。
 
  Habana 的芯片架构可以用“实在”来概括。其架构并没有用许多花哨的概念性技术——在技术白皮书中,Habana 直接明了地告诉大家其架构就是 VLIW SIMD,一种广为人知的架构。
 
  VLIW和SIMD技术早在上个世纪就已经提出,如今已经有20多年的历史了。 其中,SIMD(单指令流和多数据流)体系结构的核心是使用数据并行性,以便处理器仅用一条指令即可处理大量并行数据。 该技术已应用于高性能计算处理器(例如,GPU使用的SIMT技术可被视为SIMD技术的衍生产品)。 SIMD非常适合于具有大量数据并行性的深度学习,这也是Habana在其深度学习加速芯片中使用SIMD的主要原因。
 
  VLIW 技术(超长指令字)则是另一个用于并行计算的重要技术,其核心是让编译器去找出在一个指令中能并行执行并充分利用处理器资源的多个计算操作。在通用计算时代,VLIW 曾遭遇了一次失败(本世纪初的 Intel 的 Itanium 系列),因为在通用计算时代程序中会有大量的分支判断,从而造成静态编译器难以预测可以并行操作的指令,造成性能损失。然而,VLIW 并未被人抛弃,在 20 年间 VLIW 在 DSP 等计算较为规整的应用领域获得了一席之地,直到今天深度学习时代又重现江湖。在深度学习应用中,计算很规整,因此编译器可以很好地预测操作并行性并作相应调度。而一旦使用 VLIW,则用于深度学习加速的处理器可以省去传统超标量处理器中复杂的片上硬件调度模块,从而可以把芯片面积留给真正用于计算的单元。
 
  可以说 Habana 使用了两个广为人知(但是非常适合深度学习)的技术实打实地把芯片做了出来,并且在工程上把细节做到了完美。事实上,我们认为 Habana 芯片的工程量并不小,尤其是在硬件之外的软件编译器部分——因为 VLIW 需要一个非常高效的编译器才能保证其性能,即使是在计算较规整的深度学习应用,做好这样的编译器也并不容易。
 
  基于其扎实的产品,Habana 已经开始了与多个云端数据中心客户的合作,并且于去年底被 Intel 收购。
 
  Intel 需要什么样的 AI 芯片产品
 
  对于 Intel 来说,在错过了移动计算之后,人工智能时代不能再错过了。目前来看,Intel 在人工智能领域的终端计算(收购 Movidius)、边缘计算和云端计算都有布局,但是重中之重还是利用 Intel 一直以来在云数据中心的强势地位来确保打下云计算人工智能芯片市场。这也是它接连收购 Nervana 和 Habana 这两家云端人工智能芯片公司原因。
 
  那么,Intel 究竟需要什么样的芯片产品呢?首先,Intel 需要一个能按时交付不跳票的产品。在这个时间点上,云端人工智能芯片在几年内成为数据中心的刚需已成定局,如果 Intel 没法在近期打破 Nvidia 的垄断真正打入云端人工智能芯片市场,那么未来想要打入会越来越困难。更关键的是,目前云数据中心的几大巨头都在自己布局芯片,例如 Google 已经有了 TPU,Amazon、阿里巴巴自研的深度学习加速芯片也已经流片完成,腾讯也投资了本土的 GPU 初创公司燧原,因此如果等到几年后云数据中心都开始使用自研芯片的时候,Intel 就更难打入这个市场了。这也是 Intel 使用已经有产品的 Habana 替代迟迟不能交付的 Nervana 最关键的原因。
 
  其次,从技术上来说,云端芯片最关键的门槛在于可扩展性,即如何能保证云端芯片在大规模部署(包括一机多卡,多机等情形)的时候,其总体性能可以保持接近线性增长。可扩展性门槛高的原因是它是一个系统工程,并非是把单芯片性能做好就行了——要做到可扩展性,需要在设计芯片的同时就考虑其与其他芯片通信的能力,同时需要在软件上也给予大量的支持才能让整个系统的性能充分发挥。这事实上需要非常高的工程量,同时也需要团队能对于整个分布式系统有深入的理解才能把系统做好。
 
  我们看到,Habana在这方面提出了令人满意的答案:Habana的芯片带有RDMA模块,因此可以支持大规模分布式计算。 此外,在设计底层编译器和软件体系结构时,应充分考虑该软件和软件。 硬件协作系统设计使Habana具有很高的可扩展性。 根据官方数据,即使处理器数量超过600,其总体分布式性能也可以接近线性。与具有相同处理器数量的Nvidia V100 GPU相比,其训练性能提高了近4倍, 这是一个非常惊人的结果,其中必须包括芯片和软件/算法工程师的大量努力。电脑知识学习网
 
  综合以上的分析,我们认为 Intel 用 Habana Gaudi 系列产品代替原计划中的 Nervana Spring Crest 可以概括为是“高质量系统工程的胜利”。之后 Intel 在云端人工智能芯片领域能否真正打开市场,让我们拭目以待。