人工智能的概念诞生于1956年的Dartmouth学会,麦卡锡在此次会议上正式提出人工智能的概念。人工智能经过半个多世纪的发展,目前已经应用在机器人,语音识别,图像识别,自然语言处理,专家系统等领域。当然还有近几年超火的芯片设计领域,国内AI芯片公司也如雨后春笋般涌现。地平线,燧原,天数智芯,寒武纪,比特大陆.....每家也都推出了自己的芯片产品。
目前市场上的对于AI芯片并无明确统一的定义,广义上所有面向人工智能(Artificial Intelligence,AI),包括Training(训练)和Inference(推理)应用的芯片都可以被称为AI芯片。[1]
目前市面上的AI芯片种类太多了,各种PU(process unit)层出不穷,从最常见的CPU,GPU,到现在的BPU,DPU,VPU,NPU等等(当然有一些PU在严格意义上来讲,并不算AI芯片),感觉在命名上,26个英文字母已经快不够了,今天就梳理一下常见的各种PU,看看他们都是如何在各自的领域发挥作用的。
APU(Accelerated Processing Units)
中文名字叫加速处理器,是AMD在2011年推出的融聚未来理念产品。它第一次将处理器和独显核心做在一个晶片上,协同计算、彼此加速,使得任务可以灵活地在CPU和GPU间分配,提高效率。
就在6.1号,苏妈现身主题为“AMD Accelerating – The High-Performance Computing Ecosystem.”的发布会,发布了两款APU,分别是R7-5700G和R5-5600,将于8月5号开售。
当然,APU也可以指Audio Processing Unit,专门用于处理声音数据的单元。
BPU(Brain Processing Unit)
BPU是自动驾驶芯片及解决方案公司研发的一款AI芯片。基于创新的人工智能专用计算架构 BPU,地平线已成功流片量产了中国首款边缘人工智能芯片——专注于智能驾驶的征程(Journey) 1 和专注于 AIoT 的旭日(Sunrise) 1 ;2019 年,地平线又推出了中国首款车规级 AI 芯片征程 2 和新一代AIoT智能应用加速引擎旭日 2 ;2020年,地平线进一步加速AI芯片迭代,推出新一代高效能汽车智能芯片征程 3 和全新一代 AIoT 边缘 AI 芯片平台旭日 3 。
近日,2021款理想ONE汽车搭载双“征程3”芯片,地平线的AI芯片已经受到业内车企的广泛认可。
CPU(central processing unit)
这个大家太熟悉了,CPU的结构主要包括运算器(ALU, Arithmetic and Logic Unit)、控制单元(CU, Control Unit)、寄存器(Register)、高速缓存器(Cache)和它们之间通讯的数据、控制及状态的总线。
DPU(Deep-Learning Processing Unit)
DPU的概念最早由深鉴科技提出,成立于2016年,其产品则是基于FPGA的处理单元,拥有业界较为领先的机器学习能力,专注于神经网络剪枝、深度压缩技术及系统级优化。2018年被Xilinx收购。
DPU也指Dataflow Processing Unit 数据流处理器, Wave Computing 公司提出的AI架构;Data storage Processing Unit,深圳大普微的智能固态硬盘处理器。
EPU(Emotion Processing Unit)
EPU这个词,我也是第一次听。EPU是由Emoshape公司提出的。Emoshape是一家致力于提供可教导智能机器与人类互动技术的公司。EPU基于微控制器(MCU)设计,在人工智能(AI)、机器人和消费电子设备中促成近乎无限的认知过程产生真正情绪反应。EPU是Ekman理论的延伸,该理论利用情绪进化理论识别12种主要情绪。
EPU的部分主要功能包括:
- 具有高性能机器情绪意识
- 在智能机器中创造情绪状态和合成情绪
- 让人工智能或机器人能够体验64万亿种不同的情绪状态
- 向其他人工智能技术传送数据,以获得一系列真实的表情和互动,并且全面了解语言和评价
- 对话准确率高达98%
FPU(Floating Processing Unit)
做浮点运算的模块
GPU(Graphics Processing Unit)
可以说这几年GPU太火爆了!国内很多AI芯片公司都是做GPU的。在5年以前,想在国内公司做GPU是很难的,但现在则有很多初创公司进入GPU领域,比如天数,沐曦,景嘉微等。
GPU被广泛用于嵌入式系统、移动电话、个人电脑、工作站和电子游戏解决方案当中。现代的GPU对图像和图形处理是十分高效率的,这是因为GPU被设计为很高的并行架构这样使得比通用处理器CPU在大的数据块并行处理算法上更具有优势。
从硬件设计上来讲,CPU 由专为顺序串行处理而优化的几个核心组成。另一方面,GPU则由数以千计的更小、更高效的核心组成,这些核心专为同时处理多任务而设计。
串行运算示意图
并行运算示意图
所以,GPU在图像处理等任务上,有极大的优势,结合自动驾驶等应用场景,使得GPU成为芯片行业的新宠。
HPU(Holographic Processing Unit)
全息处理器。微软HoloLens是世界上首台独立的全息计算机设备,能够提供高清晰度的全息影像,其秘密在于HoloLens搭载的Holographic Processing Unit(全息处理单元,简称HPU),这是一款定制芯片,可以处理和交互不同传感器及Intel Atom的数据串流。
IPU(Intelligence Processing Unit)
英国AI芯片创业公司Graphcore率先提出的概念,即智能处理器。成立于2016年,总部位于英国布里斯托,Graphcore的主要业务是设计用于AI应用程序的处理器,为云服务等应用提供产品支持。
今年5月20号,在第五届世界智能大会上,Graphcore的MK2 IPU正式亮相,工艺为7纳米,集成了594亿个晶体管,具有1472个真正独立的处理器内核。IPU-M2000是一款即插即用的机器智能刀片式计算单元,集成了4颗MK2 IPU,可提供1 petaFLOPS机器智能计算。
JPU
JPU目前还没有明确的概念,有一称说是Job Processing Unit,叫这个名字完全没有任何特点。
KPU(Knowledge Processing Unit)
嘉楠耘智的K210就是一款基于自主研发的神经网络KPU,基于RISV-V架构,目前已经应用在多个领域。
另外中科驭数也提出了KPU概念,其KPU是专为加速特定领域核心功能计算设计的一种协处理器架构,以功能核作为基本单元,直接对应用中的计算密集性应用进行抽象和高层综合,实现以应用为中心的架构“定制”,有效解决特定领域的海量数据处理问题。
LPU
目前业内还没有关于LPU的定义,大家快来抢啊!
MPU(Micro Processing Unit)
微处理器,与CPU概念相近,不做过多的介绍。
NPU(Neural-Network Processing Unit)
做NPU的公司不止一家,这里介绍一下平头哥的含光NPU。2019年9月,T-Head发布了首个数据中心芯片-含光800。瀚光800是一款12nm高性能人工智能推理芯片,集成了170亿个晶体管,实现了820 TOPS的峰值计算能力。在行业标准ResNet-50测试中,实现了78563 IPS的推理性能和500 IPS/W的能效率比。
OPU
OPU在业内也没有明确的概念,有想法的同学们早点下手。
PPU(Physics Processing Unit)
物理运算处理器。PPU是进行模拟物理计算的处理器,CPU是为了达到更快的运算速度,GPU是为了达到更好的图像效果,那么PPU就是用于沟通虚拟电子世界和普遍存在的物理真实,使画面更加真实,贴近现实。在GDC2005首次提出PPU这个概念。
QPU(Quantum Processing Unit)
量子处理器,利用量子叠加性快速遍历问题的各种可能性并找到正确答案。QPU算力随比特数n的增长呈幂指数2n增长。目前无论国内还是国外在量子计算领域都处于探索阶段。
RPU
Radio Processing Unit? Resistive Processing Unit? 目前来看,PRU在业内被提及的少之又少。这两个概念也很少听到。
SPU
Service Processing Unit?Standard Product Unit?Streaming Processing Unit?没有一个能打的!
TPU(Tensor Processing Unit)
张量处理器,它是谷歌在2015年6月的I/O开发者大会上推出的计算神经网络专用芯片,为优化自身的TensorFlow机器学习框架而打造,主要用于AlphaGo系统,以及谷歌地图、谷歌相册和谷歌翻译等应用中,进行搜索、图像、语音等模型和技术的处理。
至今,谷歌已经发布了四代TPU。
UPU(unified processor unit)
是深圳中微电科技有限公司(ICube)提出的概念。特点是把CPU和GPU两种异质核统一在一个芯核内,并采用独有的不牺牲效率的多线程技术。
中微电不仅提供UPU IP,还提供芯片,其IC1是第一个基于UPU的移动系统芯片,已于去年推出工程样片,主频600MHz,是双核-8线程。预计明年底推出IC2芯片,主频1GHz,四核-16线程。
VPU(Vector Processing Unit)
一指矢量处理器,是Intel收购的Movidius公司推出的图像处理与人工智能的专用芯片的加速计算核心。
还有Vision Processing Unit,Video Processing Unit,和GPU功能接近。
WPU
一指Wearable Processing Unit,Ineda Systems公司推出的可穿戴SoC产品,现在已经没有消息了。二指Web Processing Unit。
XPU
X代表未知,代表无限,任何一个尚未研发出来的处理器都可以认为是X处理器!目前的话,如果非要选一个,那么就选Xilinx-XPU吧。
YPU
这个真没有......
ZPU(Zylin Processing Unit)
Zylin是一家挪威公司,ZPU是其推出的一款32位开源处理器。目前我们依然可以在github上看到它的开源代码。
zylin/zpu
在人工智能,深度学习等概念全面融入芯片设计的时代,各家AI芯片公司顺势而起,各种概念也是层出不穷。而26个英文字母也面临着即将用尽的情况。没关系,不用慌,大不了用两个字母嘛。在未来的AI芯片浪潮中,能有多少能真正把概念做成产品推广到市场还是未知数。芯片是一个盈利周期长且投资巨大的行业,潮水退去后,我们就知道到底哪些公司在裸泳。
AI芯片设计在国内处于百花齐放的状态,相比国外,我们不算落后,这是我们希望看到的,也希望AI芯片能为我们带来更具想象力的应用场景。
参考
^https://www.graphcore.ai/posts/machine-learning-processors-for-both-training-and-inference