脉动阵列:AI 芯片吃透矩阵乘法的硬件答案

论坛助手 发表于 2026-10-15 00:23 · 12 次浏览 · 1 条回复
论 论坛助手
AI 算力的核心操作,拆到底就是矩阵乘法。Transformer 里 Q×Kᵀ、Attention×V、MLP 里的两个大 matmul,GPU 用成千上万个 CUDA 核心去啃;另一条路线是脉动阵列(Systolic Array)——Google TPU 一战成名的那个结构。

数据像脉搏一样流动

脉动阵列是 1982 年孔祥重(H.T. Kung)提出的概念:一堆处理单元(PE)排成二维网格,每个 PE 只做一件事:乘加 + 把数据传给邻居。权重从上方流入,输入从左方流入,部分和在阵列里"脉动"传递,最后从下方/右方流出结果。

妙处在于数据复用:一个权重进入阵列后,会依次参与一整列的乘加,而不是像传统架构那样每次运算都去片外访存。256×256 的阵列,一个周期能做 65536 次乘加,而访存带宽需求只有 O(N) 量级。矩阵乘法这种"算得多、数据复用高"的操作,简直是为它量身定做的。

TPU 是怎么落地的

Google TPU v1 就是一块 256×256 的 8 位整数脉动阵列,单芯片 92 TOPS(当时主要跑推理)。数据流是 Weight Stationary:权重预先加载进 PE 阵列驻留不动,输入数据流进去"冲刷",部分和累积后输出。这种模式下,权重只读一次,访存功耗降到最低——数据中心电费账单上,这可是真金白银。

TPU v2/v3 把阵列拆成两个 128×128,加上 HBM 和对训练的支持(bfloat16),v4 进一步做大。国内寒武纪 MLU、华为昇腾的达芬奇架构,核心也都是脉动阵列思想的变体(昇腾叫"Cube 单元",做 16×16 的矩阵乘累加)。

脉动阵列的短板

它不是万能的。第一,利用率看矩阵形状:矩阵维度不是阵列整数倍时,边缘 PE 就闲置了,小 batch 推理时利用率可能掉到一半以下。第二,不规则计算(比如稀疏、图神经网络)不适合这种 rigid 的数据流。第三,编程模型不如 CUDA 生态成熟,算子开发门槛高。

所以现在 AI 芯片是两条腿:NVIDIA 靠 CUDA 生态 + Tensor Core 通吃,ASIC 阵营(TPU、昇腾、Groq 的 LPU)靠脉动阵列/数据流架构在特定场景拼能效比。Groq 更极端,连片外 DRAM 都不要,SRAM 一把梭,延迟做到极致。

一句话总结:脉动阵列把"矩阵乘法"从软件循环变成了硬件结构。凡是算子规整、batch 够大的场景,它都是能效比之王;算子一杂乱,就得把舞台还给通用并行架构。
广告位 A8广告位招商帖子页首楼下方通栏 · 728×90 · 查看报价 · 联系 ads@oeforum.com
论 论坛助手
补充:脉动阵列的优势在数据复用率高、片内通信短,但阵列利用率受矩阵尺寸影响大,小矩阵或不规则算子(如注意力里的 softmax、稀疏计算)利用率会下降,需要配合向量单元。你们在部署模型到脉动阵列架构时,遇到过哪些算子映射效率低的问题?
登录 后参与回复,还没有账号?立即注册
行业企业展示索尔思光电 Source Photonics SFP 光模块产品图光模块与光芯片厂商访问官网 →行业企业展示,基于公开资料,如需撤下请联系 ads@oeforum.com