异构智能推出第一代NovuTensor,吴韧的极简主义触发计算暴力

与主流方案不同,NovuTensor 是一种特殊处理器,可以直观地将张量作为抽象单元处理,而无需将其切割成 2D 矩阵来理解,异构智能认为这才是 CNN 运算的最佳硬件方案。从一张白纸开始作画,背后不仅有对深度学习的深刻认知、既有硬件方案的反思,还有方法论上的支持,和既往经验的深刻影响。不过,跨过技术风险后,接下来的考验更为严峻:满足用户的胃口,让产品与市场匹配。吴韧对此很有信心,如果用户对价格、功耗等关键指标有要求,这枚芯片会非常有竞争力。

10 月,异构智能 CEO 吴韧终于拿到 GlobalFoundries 代工的第一批芯片(NovuTensor)的样本。虽比预期推出时间晚了近一年,但接下来便是硅谷速度:
九天后,芯片正常运行;三周后,Benchmark测试出炉(如下图)。运行 ResNet-18 等各种测试,无论是吞吐量、延迟还是性能功耗比,NovuTensor 均优于 Nvidia Xavier芯片,而后者正是英伟达未来收入的重要增长点。
NovuTensor Benchmark results.
「性能比预期的还要好。」吴韧言语中透露着喜悦,这是独特的芯片架构——能在深度学习的自然单位(张量)上运行,带来的先天优势。

9 月,公司的原生张量计算处理器(Native Tensor Processor)获得美国专利(US Patent No. 10,073,816, Native Tensor Processor and Partitioning of Tensor Contractions)。从提交到批准,耗时仅 14 个月。

「在惠普实验室工作十几年,一起工作的不乏顶级科学家,但没听说过谁在三年内拿到美国专利。」吴韧说。

这也佐证了这一思路的独创性,「完全没有可以参考的资料,没有人这样想过。」

新芯片demo

每个人都想「发明」自己的芯片,很多创业公司声称拥有可靠的芯片。遗憾的是,研究机构 Mentor/Wilson 功能验证研究表明(The 2018 Wilson Research Group ASIC and FPGA Functional Verification Study),2018 年,只有 26% 的 ASIC 实现了一次流片成功,比如有的芯片不能正常工作,有的没能达到性能目标等。

NovuTensor 属于 26%。
NovuTensor 芯片峰值算力可达 15TOPS,单芯片功耗为 5W,加速板卡功耗为 15W。图片来自吴韧 LinkedIn。

一、「矩阵」or「张量」,这是个问题

尽管 Google TPU 翻译过来是张量(Tensor)处理单元,但算子并非张量而是矩阵,旨在大规模执行矩阵乘法。矩阵乘法也是目前绝大多数 AI 加速器最重要的目标算法。

异构智能前工程副总裁(著名 GPU 芯片设计专家、目前在三星负责自研 GPU)、Native Tensor Processor 专利发明人之一吕坚平推测,TPU 的设计灵感可能源自英伟达的 GPU。

「当 GPU 被用于深度学习时,张量被展开成多个二维矩阵,矩阵运算由从 host CPU 调用矩阵代码库完成,矩阵代码库是针对 GPU 底层优化过的矩阵运算代码。」他在《我们应该拥抱「脉动阵列」吗?》一文中分析道,

「因此,尽管程序开发人员可以编写他们自己的代码,但大部分人仍然会选择采用已经内置的矩阵代码库。」

矩阵,是一个非常好的抽象表达方式——简洁并且适合大部分适用场景,科学、工程计算关心的大部分算法都可以用矩阵方式高效做出来。

「矩阵操作做好了,绝大多数工程计算(包括 AI 计算在内)都可以靠它做出来。」吴韧说。

事实上,矩阵乘法的优化和加速问题已经过充分研究,工程师们对矩阵乘法的实现、优化和 Trade-off 也非常熟悉。BDTI(伯克利设计技术公司)主席 Jeff Bier 在接受 EETimes 采访时曾坦言,人们已经对 GPU 所需要的矩阵数学有很多了解,

「但是,在开始学习 AI 之前,很多人甚至不知道张量是什么。」
从左到右:向量(DSP 的基本操作单元)、矩阵(TPU、GPU 的基本操作单元)和张量


然而,这一轮人工智能的进步正是来自深度学习。正是基于张量进行的卷积运算,深度学习才在图像识别领域任务(比如目标识别、图像分类)中超越其他所有机器学习手段。

无论是向量还是矩阵运算,对于卷积神经网络来说,并不够原生(native),以此为基础的设计也会存在先天不足。

比如,传统矩阵处理器需要把一个 3D 张量展开成一个 2D 矩阵才能进行运算,这往往需要从存储器中提取一整个张量才能展开成 2D 矩阵。不仅造成数据传输负担很大(因此需要很宽内存带宽),而且内存访问带来的能量开销也很大(进而限制了能效比)。

吴韧打了一个比方。

CNN 就像冰激凌,用 CPU 来跑,就像用手蘸着、一点一点地吃;DSP 利用单一指令完成一系列操作,向量化操作就像用吸管吃;GPU 一次处理一片,切片吃法的效率就高出许多。

但真要大快朵颐,最高效的办法还是设计一次能吃一整块的专用工具。

二、锁定算子,极简带来暴力

卷积神经网络的运作过程,就像按照一定的标准将两桶信息进行搅拌,这个搅拌标准就是卷积核(Kernel),尺寸大小通常是 3x3、5x5、7x7,较大卷积核都可以用 3x3 卷积核堆叠。

卷积操作

经典的 VGGNet 通过比较彻底地采用 3x3 尺寸的卷积核来堆叠神经网络,证明了更小卷积核尺寸的重要性。较之直接使用大卷积核,堆叠 3x3 卷积核有两个好处:

在达到相同感受野的情况下,卷积核越小,所需参数和计算量越小,而且特征学习能力更强。

对芯片设计来说,这无疑是好消息。

「从数学上说,CNN 的算子就是三维张量空间下的卷积。3 x 3、1 x1 的卷积核是极简操作符,将最小的 operation 最大程度优化后,其他相关网络都能得到很好支持。」吴韧解释道。

通过使用非常小的(3 x 3)卷积核,NovuTensor 可以最有效地在本地执行「逐层」计算。由于架构无需一次取一个完整张量,只需取子张量,所以内存访问负担大大降低,能效比也得到提升。而多个 3D 空间中的子矩阵形成的子张量、一次处理完之后直接得到结果子张量,以及所有计算完成后得到的最终结果,与传统矩阵处理器使用矩阵展开做的结果一样。

吕坚平曾在前述文中主张,由于脉动陈列本身扩充性不高,我们应该继续寻找其他替代方案。事实上,这枚芯片的一些重要设计汲取了超级计算机的设计灵感,比如 collective streaming、Map-Reduce(专利 Partitioning of Tensor Concatenation 的灵感来源)。

在吴韧看来,这种做法更具方法论上的深意。

数学之美,本质在于简单而直接。数学的美妙,就是寻找尽可能适用更多场景的最小操作,这也是 Matlab(矩阵实验室)被视为杰作的根本原因。这种极简主义方法论,也是与 NovuTensor 的方法论。

「矩阵是覆盖大多数科学和工程计算的关键算子,但不是人工智能的最关键的算子,基于矩阵的做法可能不是最优解。」吴韧解释道,「我们做的,就是为人工智能的关键算子做一个最优解」。

极简的好处,就是会带来处理能力的暴力。

比如,异构智能的全新体系架构如果采纳台积电的 7 纳米制程,可以做到芯片面积不到 1 平方毫米,耗电不到 365 毫瓦,就达到 10 TOPS 的计算能力,比苹果最新 A12 芯片中的 NPU 面积小了六倍,而性能提升了一倍。

而这种暴力能力,恰恰是解决问题的关键。

多年前「深蓝」的成功,让深耕计算机象棋领域十多年的吴韧对算力有了深深的敬畏,也对他做事情的方式产生了影响:算力可以带来数量级的差异,但算法不会。

「如果拿到暴力,我们会比别人有更多的空间去解决问题。」

三、异构计算的精髓

由于没有矩阵的概念,那些可以用矩阵表示的概念,NovuTensor 就没法表示。这也是「术业有专攻」带来的 Trade-off。

在吴韧看来,用最适合的专用硬件去做最适合的事,正是异构计算的精髓。针对深度学习中的卷积神经网络做到最优,异构做不了的,可以合作。这与过去造就巨大商业成功的「一个体系结构覆盖所有可能性(one size fits all)」的哲学,形成鲜明对比。

然而,在吴韧看来,真正理解异构计算的人并不多。

最新的高通骁龙 855 在 Hexagon 690 DSP 中添加了张量处理单元,里面添加了更多 MAC block,当 CPU、GPU、DSP 不能满足计算需求时,设计这样的单元针对 AI 计算加速,「这正是异构计算的精髓。」吴韧认为,所谓异构计算,就是将不同的架构放在一起做事。

然而,将这个设计放到过去的 Pipeline 里的做法,又与异构计算精髓背道而驰。因为,「用向量指令激活 block,工作效率先天受到限制。」

芯片的设计,不仅是通用与专用之间的平衡,也涉及当下与未来的预判。

还在不断演进中的 CNN 是否会发生突变,比如出现 0.5x 0.5 尺寸的卷积核,以至于让这个底层设计作废?

吴韧认为不会,「最近算法的演进,更多的是层数变深、加入短路 (shortcuts),滤波器(filters)数变多了。但回到算子上,还是三维张量空间做 3x 3x D 的卷积操作。」

其实,吴军在《数学之美》中也曾提及当年谷歌大脑选择神经网络而不是其他机器学习技术的原因,其中一点就是各种机器学习算法不断涌现,但是人工神经网络算法非常稳定,几乎没有怎么变过。

那么,即将到来的 5G 元年对本地计算又意味着什么?吴韧又打了一个比方:孩子是在做了很多本地处理后,再和长辈沟通。

「正确和可扩展系统的设计,AI 会分布到越来越多的层级,它们沟通不是原始数据,而是不同抽象等级上的通讯。」

为每一层的各种东西提供智能,或者是智能需要的计算能力,这个事情本身是正确的,不会受到 5G 影响。

四、「Whole Product」的商业模式

有人曾形容,中国 AI 芯片创业公司商业模式如同「创造 101」(偶像选秀节目)。

有的做起了垂直领域的解决方案供应商,被打包在解决方案中的芯片成为控制标的成本的重要手段;有的公司将业务扩展到产业链下游,打造集自身算法与硬件于一体的终端产品;有的仍然将业务局限在一块板子上。

异构智能的「芯片+模型」商业模式,似乎很难严格归纳到上述模式中,但可以从公司的人工智能观中推演出来:人工智能并非技术,而是会改变现实生活的产品。在这个过程中,能在本地做强力计算(但价格和功耗低)的芯片,至关重要。

吴韧经常提及「实时性」的重要性。比如医疗诊断中,关键的不是事后比对,而是智能设备能实时对病人内部身体情况做出反应,指引医生接下来应该注意哪里并拍照。在他看来,这是真正的人工智能应用。

不过,芯片只是人工智能改变生活的第二步,首先,普通单位通常需要一个聪明的模型。

比如,在与希氏异构的合作中,异构智能不仅会为希氏异构提供芯片帮助模型的本地实现,还为其搭建了用于快速训练模型的超级计算机。

其实,异构的商业模式还可以追溯到硅谷营销大家 Bill Davidow「全产品(whole product)」战略思想。

在 Bill Davidow 看来,大多数初创企业都失败了,最常见的原因是他们开发技术而不是产品。营销必须发明完整的产品,并推动他们在防御性细分市场中占据领先地位。

易言之,一方面,开发技术的同时,更需要提供比对手更加完整的产品。比如硬件,软件,基础设施,销售渠道,促销,客户服务等等。这正是异构智能垂直优化的思路来源。

另一方面,如果创业者的产品并非市场领导者所需的东西,还可以考虑更细分市场。当然,从商业角度来看,这个较窄的细分市场仍然必须足够大。AI 硬件加速器市场已经足够大,专利申请成功也为公司在这个领域的竞争设置了一道防御系统。

吴韧表示,针对每个垂直行业具体复杂的要求,异构智能更愿意以合资公司的方式去解决,而不是自己去做解决方案供应商。

比如,NovuTensor 属于工业级别芯片,过车规并不是异构智能愿意做的,更倾向交给合资公司去解决。希氏异构就是一个合作的范本。

「这是做技术的朴素逻辑。」吴韧说,「对于核心零部件,当你比所有竞争对手做得都好,客户就只能选择你。英特尔如是,英伟达如是,NovuMind 也将如是。」

目前,异构智能正将芯片开放给第一批 Tier One 合作伙伴,「非常优雅」的 SDK 很快也会推出。A 轮融到的 1500 多万美元交出成绩单后,接下来就要看是否满足用户的胃口,这里才是绝大多数创业公司倒下的地方。公司也正在进行新一轮融资,计划利用更加先进的制程保持技术优势。

2017 年,大家纷纷进入 AI 芯片大 Party。2018 年行将结束之际,大面积宣告失败并未如专家预言般出现,尽管并非所有创业公司都拿出了自己的作品,但似乎没有妨碍他们能够筹集更多资金。

不过,Party 的高潮尚未到来。最后剩下为数不多的人时,竞争才最精彩。「具有绝对竞争力的人,才能笑到最后。」吴韧说。

产业吴韧异构智能芯片
3
暂无评论
暂无评论~