GPU
GPU(Graphics Processing Unit)图形处理单元,是一种专门在个人电脑、工作站、游
戏机和一些移动设备(如平板电脑、智能手机等)上图像运算工作的微处理器。作为
传统显卡的核心,专为执行复杂的数学和几何计算而设计的,这些计算是图形渲染所
必需的。
如今GPU 已不再局限于图形处理应用,GPU 通用计算技术发展已经引起业界不少的关
注,事实也证明在浮点运算、并行计算等部分计算方面,GPU 可以提供数十倍乃至于
上百倍于CPU 的性能,大大推动了人工智能和高性能计算领域的发展。
GPU 生产厂商很多,但大家熟悉的却只有INA 三大厂商:Intel、Nvidai、AMD
NPU
NPU,神经网络处理器,在电路层模拟人类神经元和突触,并且用深度学习指令集直
接处理大规模的神经元和突触,一条指令完成一组神经元的处理。相比于CPU 中采取
的存储与计算相分离的冯诺伊曼结构,NPU 通过突触权重实现存储和计算一体化,从
而大大提高了运行效率。NPU 的典型代表有国内的寒武纪芯片和IBM 的TrueNorth。
TPU
TPU 是一款专用于机器学习的芯片,它是Google 于2016 年5 月提出的一个针对
Tensorflow 平台的可编程AI 加速器,其内部的指令集在Tensorflow 程序变化或者更新
算法时也可以运行。TPU 可以提供高吞吐量的低精度计算,用于模型的前向运算而不
是模型训练,且能效(TOPS/w)更高。在Google 内部,CPU,GPU,TPU 均获得了一定
的应用,相比GPU,TPU 更加类似于DSP,尽管计算能力略有逊色,其功耗大大降
低。然而,TPU,GPU 的应用都要受到CPU 的控制。
BPU
BPU, 大脑处理器,是由地平线科技提出的嵌入式人工智能处理器架构。第一代是高斯
架构,第二代是伯努利架构,第三代是贝叶斯架构。目前地平线已经设计出了第一代
高斯架构,并与英特尔在2017 年CES 展会上联合推出了ADAS 系统。传统CPU 芯片
是做所有事情,所以一般采用串行结构。BPU 主要是用来支撑深度神经网络,比如图
像、语音、文字、控制等方面的任务,而不是去做所有的事情。此外,深度神经网络
的计算结构比较特殊,比如高度的并行化、时间域上的递归、中间节点的稀疏等,用
BPU 来实现会比在CPU 上用软件实现要高效,一般来说会提高2-3 个数量级。然而,
BPU 一旦生产,不可再编程,且必须在CPU 控制下使用。
DPU
DPU 深度学习处理器最早由国内深鉴科技提出,基于Xilinx 可重构特性的FPGA 芯
片,设计专用的深度学习处理单元(可基于已有的逻辑单元,设计并行高效的乘法器
及逻辑电路, 属于IP 范畴), 且抽象出定制化的指令集和编译器( 而非使用
OpenCL),从而实现快速的开发与产品迭代。事实上,深鉴提出的DPU 属于半定制化
的FPGA。