跳到主内容
快讯直播
AI智模界
AI 词典

TPU 与脉动阵列:数据流过就算完的计算方式

TPU(Tensor Processing Unit,张量处理器)是专为神经网络设计的芯片,而脉动阵列(Systolic Array)是它内部真正做矩阵乘法的那片二维计算网格。

"Systolic"取自心脏收缩的节律。这个名字很形象:数据像血液一样,被按固定节拍泵过整片阵列,流过的过程中就把乘法加法做完了。

它是怎么工作的

阵列里每个交叉点是一个 PE(Processing Element,计算单元)。每个 PE 只干一件极小的事:把从左边进来的数,乘上从上边进来的数,加进自己的累加器,然后把左边的数继续往右传、上边的数继续往下传。一个节拍,全体 PE 同时动一下。于是一波数据像水面波纹一样穿过网格,等它从另一侧流出来时,一整块矩阵乘法的部分和就已经算好了。

打个比方。普通处理器像手工作坊:工人每要拧一颗螺丝,都得先跑去仓库取两个零件,拧完再把成品送回仓库。路远,力气大半花在跑腿上。脉动阵列像流水线:每个工位的工人手边常备一套固定工具(权重),零件(激活值)坐着传送带依次经过每个工位,每过一站被加工一次,到终点就是成品。跑腿这一项被彻底删掉了。

能效优势从哪来

主要是四件事:

1. 权重驻留。权重加载一次就待在 PE 本地,被成千上万次复用,不用反复从内存搬。

2. 几乎没有指令开销。不需要取指、译码、乱序调度,控制逻辑小到可以忽略,省下的晶体管和电量都给乘加单元。

3. 数据复用率高。一个激活值向右流动时被一整行的 PE 共用,一个权重向下流动时被一整列共用。

4. 连线短。每个 PE 只和左右上下邻居说话,不用驱动长长的总线和复杂的片上网络。

关键直觉是:在芯片里,搬数据往往比算数据更耗电。传统架构每次乘加都要读寄存器堆、写回结果;脉动阵列把"搬运"变成了"流过",这才是它省电的根本原因。

和相邻概念的区别

通用 GPUTPU 的脉动阵列
设计目标通用并行计算矩阵乘法
控制开销高,靠指令调度极低,近乎固定节拍
数据移动在寄存器、缓存间反复往返在阵列中单向流转
灵活性高,什么都能跑低,形状要匹配

要区分两层:TPU 是芯片,脉动阵列只是芯片里的一种数据流架构;TPU 还包含片上缓存、激活单元等部分。反过来,脉动阵列也不是 TPU 独有,很多 NPU(Neural Processing Unit,神经网络处理器)和边缘推理芯片都采用类似的数据流思路。

对从业者的意义

理解了"搬运比计算贵",很多现象就顺了:为什么专用芯片在规则的大矩阵乘上能效突出,为什么遇到小批量、稀疏、动态形状时利用率会明显掉下来——因为阵列空转的 PE 一样在耗电。这也解释了为什么通用 GPU 至今仍是主力。

具体型号规格与支持情况,以官方页面为准。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。