AI硬件加速的核心在于针对神经网络计算特点优化设计,不同架构在通用性、能效比和灵活性间权衡,未来趋势聚焦内存瓶颈突破和软硬协同优化。 ## 1. CPU为何不适合AI计算 - CPU设计侧重复杂逻辑控制,而AI计算以高并行矩阵运算为主,导致效率低下 - 硬件加速通过专精计算单元和优化数据通路,可提升10倍以上能效比 ## 2. GPU成为AI主力的三大优势 - SIMT架构支持同时调度上万线程,完美匹配矩阵并行计算 - 深多线程机制掩盖内存延迟,保持90%+硬件利用率 - CUDA生态含cuBLAS/cuDNN等优化库,软件栈成熟度构成竞争壁垒 ## 3. 专用加速器的分野与局限 - **TPU**:脉动阵列实现数据流式计算,能效比GPU高3-5倍但灵活性差 - **ASIC**:固化CNN计算流,Eyeriss方案使数据移动能耗降低10倍 - **FPGA**:可重构特性适合边缘推理,但HLS工具链制约开发效率 ## 4. 大模型催生LPU新架构 - 专注KV缓存管理,解决Transformer推理中内存带宽瓶颈 - 服务场景要求同时满足<100ms延迟和99%利用率,传统批处理模式失效 - 动态调度和端到端流水线设计比峰值算力更关键 ## 5. 未来AI硬件三大趋势 - 内存容量/带宽超越FLOPs成为首要瓶颈 - 编译器-硬件-模型协同设计带来系统性提升 - 场景专业化加深,训练/推理/服务分化出不同架构路线
为什么AI需要专门的硬件加速?从GPU,TPU到LPU的技术演进全景
2026-04-29 18:08

为什么AI需要专门的硬件加速?从GPU,TPU到LPU的技术演进全景

本文来自微信公众号: 歪睿老哥 ,作者:歪睿老哥


聊AI芯片之前,先想明白一个问题:为什么CPU跑AI这么慢?


本质上,神经网络计算就是海量的矩阵乘法和卷积运算。这些运算的特点是计算密度高、并行性强,但控制逻辑简单。


CPU设计目标是通用计算,强大的控制单元和缓存层次用来处理复杂的分支和随机内存访问,但拿来跑矩阵乘法就像用跑车拉货,不是不能干,就是效率太低。


硬件加速的核心思路其实很简单:把晶体管用在刀刃上。


既然神经网络大部分时间都在算矩阵乘,那就把芯片面积尽可能多地堆计算单元,同时设计专门的数据通路和内存层次,减少数据搬运的开销。


过去十年,AI硬件已经演化成一个非常庞杂的生态,不同架构在设计空间里做出了不同的权衡。


没有绝对的最优解,只有针对特定场景最合适的选择。


这张图展示了从模型定义到硬件执行的完整流水线。


每一个环节的设计选择都会最终影响性能表现。接下来我们逐一拆解主流的硬件架构。


GPU:通用计算的王者,也是当下的事实标准


如果说AI训练和推理有什么"通用货币",那一定是GPU。


GPU为什么能成为AI时代的主力军?三个核心原因:


第一,SIMT执行模型天生适合并行计算。


单指令多线程的设计,让GPU可以同时调度成千上万个线程来处理矩阵中不同位置的计算。这种大规模并行性刚好匹配神经网络的计算特点。


第二,深多线程隐藏延迟。


GPU不是靠提高单核频率来提升性能,而是靠大量线程切换来掩盖内存访问延迟。当一个线程在等数据的时候,立刻切换到另一个有数据的线程继续计算,这样硬件利用率就上去了。


第三,成熟的软件生态。


CUDA生态加上cuBLAS、cuDNN等高度优化的算子库,这才是GPU真正的护城河。


很多时候性能瓶颈不在硬件本身,而在算子调优、图编译、内核融合这些软件层面的工作。


当然,GPU也不是万能的。不同模型在GPU上的瓶颈完全不一样:


CNN(卷积神经网络)计算重用率高,主要瓶颈在计算带宽;


RNN和序列模型并行度有限,受限于循环依赖;


而Transformer和大语言模型最头疼的是内存带宽和容量,特别是KV缓存的管理。


推理场景的GPU优化


推理和训练是两个完全不同的问题。


推理追求高吞吐、低延迟、低成本,所以量化是标配。


把浮点运算降到INT8甚至更低,带宽和吞吐能直接翻好几倍。


但量化收益不是白来的:校准方法、精度目标、算子是否真的支持低精度而不回落到低效的转换路径,这些都会影响最终的端到端收益。


稀疏化和压缩能进一步减少内存流量,但非结构化稀疏如果没有专门的算子支持和调度策略,反而会因为内存访问不连续和负载不均衡而降低利用率。


训练场景的GPU挑战


训练更看重吞吐、数值稳定性和可扩展性。混合精度训练现在已经是标准做法:


用FP16/BF16做计算,FP32做累加,配合loss scaling之类的技巧来保证收敛性。


大模型训练最大的敌人是内存。


激活值、梯度、优化器状态加起来很容易就超出单卡显存,所以才有了各种分布式并行策略:数据并行、张量并行、流水线并行、专家并行。


这些策略本质上都是在通信量、同步开销、流水线气泡和内存节省之间做权衡。


大规模训练最后往往瓶颈在通信和同步。


怎么让通信和计算重叠起来、互联带宽够不够、编译器能不能把内存绑定的操作融合掉,这些才是决定训练速度的关键。


TPU/NPU:领域专用张量处理器


如果说GPU是"十项全能选手",那TPU和NPU就是"单项冠军"。


领域专用加速器的思路很直接:既然大部分时间都在跑稠密线性代数,那就把数据通路和数据流专门针对这个场景优化。


最经典的就是TPU的脉动阵列架构——数据在计算单元之间像波浪一样流动,每个单元算完直接把结果传给邻居,这样就不用反复读写内存。



和GPU比,张量处理器对操作数形状和内存访问模式做了更强的假设。


这个限制换来了更高的利用率和更好的能效,但代价是灵活性下降。


推理场景的TPU/NPU


张量处理器特别适合静态形状的稠密算子。编译器可以提前做好分块规划、算子融合、布局优化,最大化权重和激活值的重用。


CNN推理在这上面跑得特别好。


但Transformer推理就不一样了。


注意力和KV缓存带来了大量流式的内存需求,不一定匹配加速器偏好的稠密重用模式。


哪怕矩阵乘法引擎很快,端到端延迟可能还是被数据搬运和softmax这类算子占了大头。


所以编译器和运行时技术变得特别重要:怎么管理缓存增长、处理内存碎片、给注意力块做内核融合,这些都是拉开差距的地方。


训练场景的TPU/NPU


TPU已经证明了在数据中心规模做训练的可行性。大的脉动阵列、高带宽内存、专门为集合通信设计的可扩展互联,这些都是硬实力。


但分布式训练永远是系统工程问题。


数据并行压力在all-reduce带宽,张量/流水线并行带来更频繁的同步和激活传输,混合专家模型还要加上路由和负载均衡问题。


最终能效比的实现,一定是模型(算子组合和形状)、编译器(融合、分片、调度)、硬件(片上内存和互联)三者协同设计的结果。


单独优化哪一个都没用。


ASIC:为极致效率而生的专用芯片


ASIC推理加速器追求的是单位面积和单位功耗下的极致吞吐。


既然是专用芯片,那就可以把数据流动模式直接固化到硬件里。


最经典的就是数据流专业化的思路:


权重不动(weight-stationary)、输出不动(output-stationary)、或者行不动(row-stationary),不同的映射策略对应不同的数据重用模式。


再加上大容量的片上SRAM来减少DRAM访问,支持低精度、剪枝和压缩,这就是ASIC加速的三板斧。



和GPU比,ASIC可以把控制和缓冲模式硬连线来减少开销,但代价就是算子和数据布局一演变,灵活性就跟不上了。所以ASIC设计往往瞄准稳定的内核(卷积/矩阵乘),同时在控制和调度上保留有限的可编程性。


CNN是ASIC的黄金场景


CNN推理结构化的计算和高重用性,简直是为ASIC量身定做的。


Eyeriss提出的空间架构和数据流分类,核心就是通过精心的映射和本地重用来减少数据移动,最终目标是降低能耗——毕竟移动数据比计算本身更费电。


DianNao家族则更进一步,在微架构层面专门针对神经算子做了优化,包括常用的激活函数、高效的权重存储和重用机制。


稀疏感知ASIC如果能利用结构化稀疏,或者架构能避免不规则索引的开销,收益会非常大。


但非结构化稀疏带来的负载不均衡、不规则内存访问、重用率下降,这些问题必须通过稀疏数据结构、调度策略,通常还需要专门的硬件支持才能解决。


训练ASIC的挑战


训练用ASIC比推理难多了。


算法迭代太快、算子组合一直在变、数值格式和优化器需要灵活性。


训练还需要反向算子、优化器更新、更大的内存来存激活和优化器状态,对数值精度和稳定性也更敏感,这些都限制了最激进的量化策略。


但这不代表ASIC不能做训练。只要选好原语集(矩阵乘、集合通信、足够有表达力的编译器/运行时),特定领域的训练系统依然能在能效比上做到很强。


关键还是硬件能力和编译器抽象的协同设计,确保新模型都能表达成支持原语的组合,同时内存系统和互联真的能支撑大规模训练的通信模式。


FPGA:可重构的灵活派


FPGA的独特价值在于可重构性。


你可以根据工作负载量身定制数据通路、内存访问、I/O接口。这让它特别适合边缘推理、低延迟流水线、还有快速的架构实验。


FPGA加速器通常用深度流水线的流式架构、自定义精度、专门的内存布局,还能和传感器、网络紧耦合来降低端到端延迟。


和GPU不一样,FPGA可以针对固定模型(或者模型家族)专门优化数据通路,利用工作负载的确定性,只要内存带宽够、算子覆盖全,能效比就能做得很好。



云端FPGA部署也越来越多。可重构逻辑作为共享推理服务的时候,吞吐和尾延迟不仅取决于计算流水线,还和主机设备接口、批处理策略、模型切换的重配置开销有关。


工具链在这里的影响特别大。


HLS、OpenCL、基于编译器的映射,这些抽象层的生产力和性能可移植性,直接决定了设计能不能快速跟上新的模型算子和稀疏模式。


FPGA推理的现状与局限


FPGA做CNN和二值神经网络推理历史很长了,量化、折叠、流水线并行这些技术都很成熟。设计通常通过固定层参数、构建流式流水线、重用片上缓冲、最小化片外流量,来用灵活性换效率。


但如果模型变频繁,或者包含加速器不支持的算子,收益就会大打折扣——主机回退和数据编组的开销可能把加速收益都吃掉。


最近也有不少工作用FPGA加速Transformer推理,给注意力、softmax、前馈层做定制计算引擎,配合结构化稀疏模式。


注意力重的工作负载压力在内存带宽,需要高效的QKV投影缓冲策略和中间激活,也受益于内核融合来减少中间写入。


和GPU比,FPGA延迟确定性更好,能效比也强,但性能高度依赖外部内存带宽、算子覆盖度、还有工具链质量(HLS调度、内存分区、DSP利用率)。


FPGA训练:还在探索阶段


全训练用FPGA比较少见。


片上内存有限、峰值吞吐比不过高端GPU、还要支撑快速演变的训练流水线,这些都是现实的障碍。


训练需要存中间激活和梯度,还要支持大量算子的反向传播,还要做优化器更新,这些都很吃FPGA资源和内存带宽。混合精度能帮上忙,但数值稳定性和在可重构逻辑里实现训练内核的复杂度,依然是不小的门槛。


现在比较务实的做法是混合方案:只卸载特定内核(比如矩阵乘),或者针对特定模型和固定训练流程做专门优化,特别是当端到端流水线能从紧耦合I/O中受益,或者能耗约束是主要矛盾的时候。


另一种思路是FPGA只做推理和硬件在环的工作负载,训练留给GPU/TPU,这样FPGA设计就能专注在确定性低延迟执行上。


LPU:为大模型服务而生的新玩家


大模型火了之后,专门针对推理服务场景的加速器也出来了。这类系统强调可预测执行、低延迟token生成、实时约束下的高吞吐,架构和软件围绕注意力为中心的工作负载和内存管理来协同设计。



这个场景和经典的批处理推理完全不一样:严格的延迟目标、波动的并发、多样的prompt长度、多租户服务的复杂调度策略。


结果就是,加速器设计不能只看峰值GEMM吞吐,内存容量、内存带宽、动态批处理和KV缓存分配的开销都得一起考虑。


从架构角度看,大模型服务主要是反复执行相对较小的矩阵乘(每个token)和带宽密集的KV缓存内存访问。


这就鼓励了减少调度开销、偏好可预测流水线、给每个计算单元配足够内存带宽的设计。


软件在这里依然是核心:管理KV缓存分页、内核融合、调度的运行时系统,往往和硬件数据通路一样重要。


LPU推理的关键挑战


推理服务经常瓶颈在内存容量和带宽,特别是长上下文和高并发场景下KV缓存的增长。LPU风格的设计目标是减少调度开销、提升可预测性,但依然要处理批处理(吞吐)和延迟之间的根本权衡,还有计算配置和内存系统设计之间的平衡。


系统级因素比如分词开销、主机设备传输、内核启动粒度,对尾延迟的影响可能很大。


这就激励了端到端的流水线设计,而不是孤立的内核优化。


另一个越来越重要的因素是模型异构性:混合专家、检索增强生成、工具调用,这些都引入了条件执行和每个token可变的计算量,降低了可预测性,也让调度变复杂了。


服务加速器因此要么约束模型接口(来保持确定性),要么在控制和内存管理上提供足够的灵活性,在不崩溃利用率的前提下处理动态行为。


对训练的启发


大部分LPU风格的系统主要目标还是推理而不是训练。


但它们对确定性执行、低开销调度、高效注意力内核的强调,也能启发训练系统的设计——特别是当训练越来越多地融入长上下文序列和混合专家路由的时候。


特别是那些减少注意力内存流量或者提升缓存局部性的技术,推理和训练都能受益,尽管训练对精度和反向传播支持还有额外的要求。


更广泛地说,大模型服务让我们看到:内存是和FLOPs同等重要的一等资源。训练系统其实已经通过激活存储和优化器状态面临类似的压力,所以推理内存管理里发展出来的技术(分页、碎片控制、布局感知调度),如果和标准的内存减少技术结合,也可能转化为训练效率的提升。


总结:AI硬件的未来在哪里?


看完这五大架构,你应该能感觉到:AI芯片没有大杀器,可以大杀四方。


GPU胜在通用性和生态,是现在的主力军,但软件栈的复杂度越来越高;


TPU/NPU在特定负载下能效比更好,但需要编译器和模型的深度配合;


ASIC把效率做到极致,代价是灵活性和迭代速度;


FPGA适合低延迟和边缘场景,但工具链门槛不低;


LPU瞄准大模型服务这个新兴场景,把内存和延迟放到了和计算同等重要的位置。


未来的趋势其实很清晰:


第一,内存是新的瓶颈。


不管训练还是推理,FLOPs越来越不是问题,怎么喂饱计算单元、怎么管理越来越大的状态,才是真正的挑战。内存容量、带宽、访问模式,这些会越来越决定最终性能。


第二,软硬协同设计是必由之路。


单独优化硬件或者单独优化软件,天花板都已经很明显了。未来的性能提升一定来自模型、编译器、硬件三者的协同设计。你中有我,我中有你。


第三,场景化和专业化会继续深化。


通用GPU不会消失,但针对特定场景的专用加速器会越来越多。训练有训练的优化方向,推理有推理的设计考量,甚至大模型服务都会发展出自己独特的架构路线。


最后想说的是,不要迷信FLOPs指标。很多芯片宣传峰值算力多么惊人,但实际跑起来利用率可能连10%都到不了。真实世界的性能是一个系统问题,不是靠堆计算单元就能解决的。


看AI芯片,别光看算得有多快,还要看数据喂得有多快,调度得有多聪明。这才是真正拉开差距的地方。


参考:Hardware Acceleration for Neural Networks A Comprehensive Survey

AI原生产品日报频道: 前沿科技
本内容来源于网络 原文链接,观点仅代表作者本人,不代表虎嗅立场。
如涉及版权问题请联系 hezuo@huxiu.com,我们将及时核实并处理。
正在改变与想要改变世界的人,都在 虎嗅APP