近年来人工智能芯片领域的科学家们进行了富有成果的广泛研究,主要集中在AI芯片目前的两种发展方向。一个方向是继续延续经典的冯·诺依曼计算架构,以加速计算能力为发展目标,主要分为并行加速计算的GPU(图形处理单元)、半定制化的FPGA(现场可编程门阵列)、全定制化的ASIC(专用集成电路)。另一个方向就是颠覆传统的冯·诺依曼计算架构,采用基于类脑神经结构的神经拟态芯片来解决算力问题。 一、按架构分类
(1)图形处理单元(graphics processing unit,GPU)。GPU是相对较早的加速计算处理器,具有速度快、芯片编程灵活简单等特点。由于传统CPU的计算指令遵循串行执行方式,不能发挥出芯片的全部潜力,而GPU具有
高并行结构,在处理图形数据和复杂算法方面拥有比CPU更高的效率。在结构上,CPU主要由控制器和寄存器组成,而GPU则拥有更多的逻辑运算单元(arithmetic logic unit,ALU)用于数据处理,这样的结构更适合对密集型数据进行并行处理,程序在GPU系统上的运行速度相较于单核CPU往往提升几十倍乃至上千倍。同时,GPU 拥有了更加强大的浮点运算能力,可以缓解深度学习算法的训练难题,释放人工智能的潜能。但是GPU也有一定的局限性。深度学习算法分为训练和推断两部分,GPU平台在算法训练上非常高效。但在推断中对于单项输入进行处理的时候,并行计算的优势不能完全发挥出来。 (2)现场可编程门阵列(field programmable gate array,FPGA)。FPGA是在PAL、GAL、CPLD等可编程器件基础上进一步发展的产物。其基本原理是在FPGA芯片内集成大量的基本门电路以及存储器,用户可以通过更新FPGA配置文件(即烧入)来定义这些门电路以及存储器之间的连线。这种烧入不是一次性的,因此,它既解决了定制电路灵活性的不足,又克服了原有可编程器件门电路数有限的缺点。
与GPU不同,FPGA同时拥有进行数据并行和任务并行计算的能力,适用于以硬件流水线方式处理一条数据,且整数运算性能更高,因此常用于深度学习算法中的推断阶段。不过FPGA通过硬件的配置实现软件算法,
因此在实现复杂算法方面有一定的难度。
将FPGA和CPU对比可以发现两个特点,一是FPGA没有内存和控制所带来的存储和读取部分,速度更快,二是FPGA 没有读取指令操作,所以功耗更低。劣势是价格比较高,编程复杂,整体运算能力不是很高。功耗方面,从体系结构而言,FPGA也具有天生的优势。传统的冯氏结构中,执行单元(如CPU核)执行任意指令,都需要有指令存储器、译码器、各种指令的运算器及分支跳转处理逻辑参与运行,而FPGA每个逻辑单元的功能在重编程(即烧入)时就已经确定,不需要指令,无需共享内存,从而可以极大地降低单位执行的功耗,提高整体的能耗比。FPGA最值得注意的例子可能是CNP,它进一步改进并重命名为NeuFlow,后来改编为nn-X。这些设计可以实现10~100 KM/s操作(GOPS),功率仅为10W以下。
(3)专用集成电路(application-specific integrated circuit,ASIC)。目前以深度学习为代表的人工智能计算需求,主要采用GPU、FPGA等已有的适合并行计算的通用芯片来实现加速。在产业应用没有大规模兴起之时,使用这类GPU、FPGA已有的通用芯片可以避免专门研发定制芯片(ASIC)的高投入和高母线排
web前端性能优化风险。但是,由于这类通用芯片设计初衷并非专门针对深度学习,因而天然存在性能、功耗等方面的局限性。随着人工智能应用规模的扩大,这类
问题日益突显。
HD-PRIDE
更衣凳GPU作为图像处理器,设计初衷是为了应对图像处理中的大规模并行计算。因此,在应用于深度学习算法时无法充分发挥并行计算优势。深度学习包含训练和推断两个计算环节,GPU在深度学习算法训练上非常高效,但对于单一输入进行推断的场合,并行度的优势不能完全发挥。其次,GPU采用SIMT计算模式,硬件结构相对固定,无法灵活配置硬件结构。此外,运行深度学习算法能效低于FPGA。
冷轧辊
虽然FPGA倍受看好,但其毕竟不是专门为了适用深度学习算法而研发,实际应用中为了实现可重构特性,FPGA内部有大量极细粒度的基本单元,但是每个单元的计算能力都远低于CPU和GPU中的ALU模块;其次,为实现可重构特性,FPGA内部大量资源被用于可配置的片上路由与连线,因此计算资源占比相对较低;再者,速度和功耗相对专用定制芯片(ASIC)仍然存在不小差距;而且FPGA价格较为昂贵,在规模放量的情况下单块FPGA的成本要远高于专用定制芯片。
因此,随着人工智能算法和应用技术的日益发展,以及人工智能专用芯片ASIC产业环境的逐渐成熟,全定制化人工智能ASIC也逐步体现出自身的优势。ASIC是专用定制芯片,定制的特性有助于提高ASI
C的性能功耗比,缺点
是电路设计需要定制,相对开发周期长,功能难以扩展。但在功耗、可靠性、集成度等方面都有优势,尤其在要求高性能、低功耗的移动应用端体现明显。比如谷歌的TPU、寒武纪的GPU,地平线的BPU都属于ASIC芯片。
(4)神经拟态芯片(类脑芯片)。在人工智能芯片中,传统的冯·诺依曼架构存在着“冯·诺依曼瓶颈”,它降低了系统的整体效率和性能[19]。为了从根本上克服这个问题,神经形态计算近年来已成为基于冯·诺依曼系统的这些传统计算架构的最有吸引力的替代方案。术语“神经形态计算”首先由Mead[20]在1990年提出,它是一种受大脑认知功能启发的新计算范式。与传统的CPU/GPU不同,生物脑(例如哺乳动物的大脑)能够以高效率和低功耗在小区域中并行处理大量信息。因此,神经形态计算的最终目标是开发神经形态硬件加速器,模拟高效生物信息处理,以弥合网络和真实大脑之间的效率差距[21],这被认为是下一代人工智能的主要驱动力。
皱纹纸神经拟态芯片不采用经典的冯·诺依曼架构,而是基于神经形态架构设计,是模拟生物神经网络的计算机制,如果将神经元和突触权重视为大脑的“处理器”和“记忆”,它们会分布在整个神经皮层[22]。神经拟态计算从结构层面去逼近大脑,其研究工作可分为两个层次,一是神经网络层面,与之相应的是神经拟态架构和