深度学习芯片 下载本文

AI芯片分类:

功能: 1.Training(训练)

2. Inference(推理)两个环节;

应用场景: 1. Cloud/DataCenter(云端)

2. Device/Embedded(设备端)

技术架构发展类型:

1、通用类芯片,代表如GPU、FPGA;

2、基于FPGA的半定制化芯片,代表如深鉴科技DPU、百度XPU等; 3、全定制化ASIC芯片,代表如谷歌TPU、寒武纪 Cambricon-1A等; 4、类脑计算芯片,代表如IBM TrueNorth、westwell、高通Zeroth等。

类型比对

一、GPU

优点:具有数以千计的计算核心可实现 10-100倍应用吞吐量

支持对深度学习至关重要的并行计算能力 比传统处理器更加快速 加快了训练过程 目前最普遍采用的深度学习运算单元之一。 局限性:

1. 应用过程中无法充分发挥并行计算优势。深度学习包含训练和应用两个计算环节,GPU在深度学习算法训练上非常高效,但在应用时一次性只能对于一张输入图像进行处理, 并行度的优势不能完全发挥

2. 硬件结构固定不具备可编程性。深度学习算法还未完全稳定,若深度学习算法发生大的变化,GPU无法灵活的配置硬件结构。

能耗 虽然 GPU要好于 CPU,但其能耗仍旧很大

二、FPGA

FPGA,即现场可编辑门阵列,是一种新型的可编程逻辑器件,由于其具有静态可重复编程和动态在系统重构的特性,使得硬件的功能可以像软件一样通过编程来修改。

FPGA作为人工智能深度学习方面的计算工具,主要原因就在于其本身特性:

可编程专用性,高性能,低功耗。北京大学与加州大学的一个关于FPGA 加速深度学习算法的合作研究。展示了 FPGA 与 CPU 在执行深度学习算法时的耗时对比。在运行一次迭代时,使用 CPU耗时 375 毫秒,而使用 FPGA 只耗时 21 毫秒,取得了 18 倍左右的加速比。

根据瑞士苏黎世联邦理工学院(ETHZurich)研究发现,基于FPGA的应用加速比

CPU/GPU方案,单位功耗性能可提升25倍,而时延则缩短了50到75倍,与此同时还能实现出色的I/O集成。而微软的研究也表明,FPGA的单位功耗性能是 GPU 的 10倍以上,由多个 FPGA 组成的集群能达到 GPU 的图像处理能力并保持低功耗的特点。根据英特尔预计,到 2020年,将有 1/3 的云数据中心节点采用 FPGA 技术。

三、不可估量的 ASIC

ASIC(Application Specific Integrated Circuits,专用集成电路),是指应特定用户要求或特定电子系统的需要而设计、制造的集成电路。ASIC用于专门的任务,比如去除噪声的电路,播放视频的电路,但是 ASIC明显的短板是不可更改任务。但与通用集成电路相比,具有以下几个方面的优越性:体积更小、功耗更低、可靠性提高、性能提高、保密性增强、成本降低。

从算力上来说,ASIC产品的计算能力是 GK210 的 2.5 倍。功耗上,ASIC 功耗做到了 GK210(NVIDIA) 的 1/15。

当然ASIC是能效最高的,但目前,都在早期阶段,算法变化各异。想搞一款通用的ASIC适配多种场景,还是有很多路需要走的。但从比特币挖矿机经历的从CPU、GPU、FPGA到最后 ASIC 的四个阶段来推论,ASIC将是人工智能发展的重要趋势之一。另外,在通信领域,FPGA曾经也是风靡一时,但是随着 ASIC 的不断发展和蚕食,FPGA的份额和市场空间已经岌岌可危。

四、NPU:为深度学习而生的专业芯片

从技术角度看,深度学习实际上是一类多层大规模人工神经网络。它模仿生物神经网络而构建,由若干人工神经元结点互联而成。神经元之间通过突触两两连接,突触记录了神经元间联系的权值强弱。

每个神经元可抽象为一个激励函数,该函数的输入由与其相连的神经元的输出以及连接神经元的突触共同决定。为了表达特定的知识,使用者通常需要(通过某些特定的算法)调整人工神经网络中突触的取值、网络的拓扑结构等。该过程称为“学习”。在学习之后,人工神经网络可通过习得的知识来解决特定的问题。

由于深度学习的基本操作是神经元和突触的处理,而传统的处理器指令集(包括x86和ARM等)是为了进行通用计算发展起来的,其基本操作为算术操作(加减乘除)和逻辑操作(与或非),往往需要数百甚至上千条指令才能完成一个神经元的处理,深度学

习的处理效率不高。因此谷歌甚至需要使用上万个x86 CPU核运行7天来训练一个识别猫脸的深度学习神经网络。因此,传统的处理器(包括x86和ARM芯片等)用于深度学习的处理效率不高,这时就必须另辟蹊径——突破经典的冯·诺伊曼结构。

以中国的寒武纪为例,DianNaoYu指令直接面对大规模神经元和突触的处理,一条指令即可完成一组神经元的处理,并对神经元和突触数据在芯片上的传输提供了一系列专门的支持。

另外,神经网络中存储和处理是一体化的,都是通过突触权重来体现。 而冯·诺伊曼结构中,存储和处理是分离的,分别由存储器和运算器来实现,二者之间存在巨大的差异。当用现有的基于冯·诺伊曼结构的经典计算机(如X86处理器和英伟达GPU)来跑神经网络应用时,就不可避免地受到存储和处理分离式结构的制约,因而影响效率。这也就是专门针对人工智能的专业芯片能够对传统芯片有一定先天优势的原因之一。

用数字来说话,CPU、GPU与NPU相比,会有百倍以上的性能或能耗比差距——以寒武纪团队过去和Inria联合发表的DianNao论文为例——DianNao为单核处理器,主频为0.98GHz,峰值性能达每秒4520亿次神经网络基本运算,65nm工艺下功耗为0.485W,面积3.02平方毫米mm。

在若干代表性神经网络上的实验结果表明——DianNao的平均性能超过主流CPU核的100倍,但是面积和功耗仅为1/10,效能提升可达三个数量级;DianNao的平均性能与主流GPU相当,但面积和功耗仅为主流GPU百分之一量级。

AI芯片产业生态:

全球AI芯公司: