
在今年2月,我们报道了日本一家名为LENZO的初创企业开发的新型处理器架构。随后编辑部收到读者提问:“虽然理解了CGLA和CPU的区别,但GPU和NPU到底有什么不同,文章中似乎没有详细说明。”
实际上,AI处理器(NPU)的定义本身就比较模糊。简单来说,AI处理器是专门针对人工智能(AI)所需计算进行优化的处理器,但这一定义过于宽泛,难以让人清晰理解。本文将尝试更详细地解释NPU与GPU的区别,以及AI处理器的发展历程。
1. AI兴起的背景
近代AI的发展经历了三个阶段:第一阶段约1956年至1974年,第二阶段约1980年至1987年,第三阶段从1993年开始。前两个阶段AI发展受限于当时计算性能不足。1993年后,计算能力大幅提升,使得传统算法开始具备实用价值。1997年,IBM的“深蓝”击败了当时的国际象棋世界冠军卡斯帕罗夫,标志着AI技术的重大突破。
尽管“深蓝”采用了大量专用硬件和并行计算,但其成本和复杂度极高,不适合普及。真正让AI研究普及的是2012年多伦多大学开发的基于卷积神经网络(CNN)的AlexNet,在ImageNet视觉识别挑战赛中取得优异成绩,推动了CNN成为AI研究的主流。
CNN的灵感来源于模拟人脑结构,1958年Frank Rosenblatt提出的感知机模型为其奠定了理论基础。1983年,美国Thinking Machines公司发布了由65,536个1bit处理器组成的CM-1系统,试图模拟神经元网络,但性能远不及人脑,最终主要用于高性能计算领域。
多伦多大学使用的NVIDIA Tesla GPU(基于Fermi架构)性能远超CM-1,单卡性能达到1.03TFlops,内存带宽高达144GB/s,使得AlexNet的训练在两块GPU上仅需两周时间,而CM-1则需70年以上。
2. CNN的计算需求
以AlexNet为例,输入为224×224像素的RGB图像,经过多个卷积层、激活函数和最大池化层处理,最终输出1000类的分类结果。卷积操作涉及大量乘加计算,例如第一层卷积需要约3500万次乘法和加法运算。
虽然单层计算量巨大,但CNN通常包含多层卷积,整体计算量极其庞大。更复杂的网络如微软2015年提出的152层ResNet,计算需求更是成倍增长。
3. GPU为何成为AI计算的首选
AlexNet训练时使用GPU,主要因为GPU具备高度并行计算能力,能够同时处理大量数据。NVIDIA在2007年推出CUDA编程接口,使GPU可用于通用计算,推动了GPU在AI领域的应用。
GPU采用SIMT(单指令多线程)架构,允许多个线程执行相同指令但处理不同数据,极大提升了卷积计算效率。以Fermi架构为例,支持多达24,576个线程并行执行。
此外,卷积计算对内存需求相对较低,数据和滤波器大小适合GPU的缓存结构,使得GPU能高效执行CNN任务。GPU的易获取性和CUDA的易用性也促使研究者广泛采用GPU进行AI研究。
4. GPU在AI计算中的演进
虽然GPU具备AI计算优势,但并非专为AI设计。NVIDIA逐步通过增加Tensor Core等专用单元提升AI性能,Tensor Core专门加速矩阵乘法,显著提高卷积运算效率。
数据类型也逐渐多样化,从FP64、FP32到FP16、BF16,甚至FP8和FP4,降低计算精度换取更高吞吐量和更大网络规模。最新的Blackwell架构支持FP4,带来显著性能提升。
然而,GPU面临功耗激增问题,最新型号功耗高达1400W,数据中心供电压力增大,推动了800V供电技术的发展。
此外,GPU在处理稀疏矩阵(含大量零元素)时效率较低,虽然NVIDIA引入了压缩矩阵格式等优化,但仍存在局限。
5. AI处理器与加速器的发展
2010年代初,部分媒体加速器和DSP开始转向AI计算。随后,针对GPU不足的市场需求,越来越多厂商设计专用AI处理器和加速器。
这些AI处理器通常极度专注于卷积和激活函数计算,支持的数据类型有限,甚至放弃复杂的执行控制,采用触发执行模式。
为了兼顾灵活性,许多设计结合了通用CPU核心(如RISC-V)和AI加速器,通过指令流水线将AI指令交由加速器处理,确保未来算法更新时仍能通过CPU核心兼容。
数据流架构在AI处理器中广泛应用,多个处理单元(PE)串联,前一单元输出即为后一单元输入,支持稀疏矩阵高效计算,降低功耗和计算冗余。
此外,计算内存(CIM)或内存处理器(PIM)技术将存储与计算结合,减少数据移动带来的能耗。三星和韩国SK海力士分别在HBM和GDDR内存中集成AI加速器,英特尔也在研究类似方案。
AI处理器通常集成大量SRAM作为ScratchPad,靠近PE以减少数据传输,提升性能和能效。Cerebras的WSE芯片是极端例子,集成数十万PE和数十GB SRAM,芯片尺寸达21.5厘米见方。
高速DRAM(如HBM)成为AI处理器标配,满足大规模模型对带宽的需求。
模拟处理器则主要面向边缘计算,通过模拟电路实现卷积运算,降低功耗和成本。Mythic和Aspinity等公司采用闪存和可重构模拟模块实现AI加速。以色列CogniFiber正在开发基于光纤的模拟AI加速器。
综上,AI处理器定义复杂,GPU和NPU各有优势。GPU具备通用计算能力和成熟生态,NPU则专注于AI计算效率和能效优化。未来AI计算将依赖多种架构协同发展。


