- 文档
- 教程
- 人工智能
【免费下载链接】AISystem
AISystem 主要是指AI系统,包括AI芯片、AI编译器、AI推理和训练框架等AI全栈底层技术
本文聚焦 AISystem 开源课程「国外 AI 芯片」章节的核心主题,系统梳理谷歌 TPU 从 v1 到 v4 的架构演进(脉动阵列、MXU、量化、BF16、3D Torus 与光路交换)以及特斯拉 DOJO 的存算一体(近存计算)体系(D1 芯片、DOJO Core、Training Tile 与 ExaPOD)。读完本文,你将掌握两类 DSA(Domain Specific Architecture)芯片的完整设计脉络、关键参数与对比方法论,并能在后续阅读仓库文档时直接定位每一代架构的对应资料。
该章节在仓库中的入口为 02Hardware/05Abroad/README.md,其下以 TPU 为主讲解了数据流(Data Flow)式脉动阵列加速矩阵运算的路线,以 DOJO 为主讲解了近存计算(Near Memory)路线——这是两种完全不同的产品形态。技术细节分别沉淀在 04TPUIntrol.md、05TPU1.md、06TPU2.md、07TPU3.md、08TPU4.md 五篇正文文档,以及 DOJO 系列的字幕资料(srt/01.srt、srt/02.srt、srt/03.srt)。
一、谷歌 TPU:从推理协处理器到 AI 计算集群
1.1 TPU 的出现背景
早在 2006 年,谷歌内部就讨论过在自建数据中心中部署 GPU、FPGA 或自研 ASIC 的可能性,但当时能在特殊硬件上运行的应用程序极少,几乎可以零成本地利用数据中心过剩算力完成,因此项目并未落地。
2013 年风向突变:谷歌研究人员预测,如果人们每天使用语音搜索并通过 DNN 进行 3 分钟语音识别,数据中心需要双倍算力才能满足需求,仅靠传统 CPU 代价极高。TPU 由此立项。从立项到大规模部署,TPU 只用了 15 个月。项目领头人 Norm Jouppi 曾表示:首批交付的硅片无需任何错误修正或掩模更改,且整个过程中还在同步组建团队、招募 RTL 设计专家、补充设计验证团队。
1.2 历代 TPU 芯片与产品线
仓库 04TPUIntrol.md 给出了历代 TPU 芯片的完整参数对比表,这是理解 TPU 演进最直接的素材:
| TPU 比较 | TPU v1 | TPU v2 | TPU v3 | Edge TPU v1 | Pixel Neural Core | TPU v4i | TPU v4 | 谷歌 Tensor |
|---|---|---|---|---|---|---|---|---|
| 推出日期 | 2016 | 2017 | 2018 | 2018 | 2019 | 2020 | 2021 | 2021 |
| 制程技术 | 28nm | 16nm | 16nm | - | - | 7nm | 7nm | - |
| 芯片大小 (mm²) | 330 | 625 | 700 | - | - | 400 | 780 | - |
| 芯片内存 (MB) | 28 | 32 | 32 | - | - | 144 | 288 | - |
| 时钟速度 (MHz) | 700 | 700 | 940 | - | - | 1050 | 1050 | - |
| 内存 | 8 GiB DDR3 | 16 GiB HBM | 32 GiB HBM | - | - | 8 GiB DDR | 32 GiB HBM | - |
| 内存带宽 (GB/s) | 300 | 700 | 900 | - | - | 300 | 1200 | - |
| 热设计功耗 (W) | 75 | 280 | 450 | - | - | 175 | 300 | - |
| TOPS | 92 | 45 | 123 | 4 | - | - | 275 | - |
| TOPS/W | 0.31 | 0.16 | 0.56 | 2 | - | - | 1.62 | - |
产品层面,谷歌除芯片外还推出了由众多 TPU 单元构成的超大规模计算系统 TPU Pod:
| 名称 | 时间 | 性能 | 应用 |
|---|---|---|---|
| TPU v1 | 2016 | 92 TOPS + 8 GB DDR3 | 数据中心推理 |
| TPU v2 | 2017 | 180 TFLOPS + 64 GB HBM | 数据中心训练和推理 |
| TPU v3 | 2018 | 420 TFLOPS + 128 GB HBM | 数据中心训练和推理 |
| Edge TPU | 2018 | 可处理高吞吐量的稀疏数据 | IoT 设备 |
| TPU v2 Pod | 2019 | 11.5 万亿次运算/秒,4 TB HBM | 数据中心训练和推理 |
| TPU v3 Pod | 2019 | >100 万亿次运算/秒,32 TB HBM | 数据中心训练和推理 |
| TPU v4 | 2021 | - | 数据中心训练和推理 |
| TPU v4 Pod | 2022 | - | 数据中心训练和推理 |
TPU 也延伸到了消费端:2017 年 Pixel 2/3 搭载 Pixel Visual Core,2019 年 Pixel 4 搭载基于 Edge TPU 框架研发的 Pixel Neural Core;后续的 Tensor G3 则面向设备端生成式 AI,升级了 ARM CPU、GPU、图像信号/数字信号处理器及专门为谷歌神经网络模型打造的 TPU。
二、TPU v1:脉动阵列的奠基之作
05TPU1.md 深入剖析了 TPU v1 的芯片架构。第一代 TPU 主要服务 8 比特矩阵计算,由 CPU 通过 PCIe 3.0 总线驱动 CISC 指令;28nm 工艺、700MHz、热设计功耗 40W(另有 75W 的统计口径),配备 28MiB 芯片内存与 4MiB 32 位累加器,封装内还有 8GiB 双通道 2133MHz DDR3 SDRAM(34GB/s 带宽)。
2.1 关键构成单元
- DDR3 DRAM / Weight FIFO:模型权重通过 DDR3-2133 接口存储在片上 DDR3 RAM,经 PCIe 从主机内存"预加载",再传输到 Weight FIFO 供 MXU 使用。
- MXU(矩阵乘法单元):以脉动阵列形式工作,提供 256×256×8 bit 乘加计算,每个时钟周期输出 256 个 16 bit 部分和;内含 64KB Weight Tile 与双缓冲缓存单元,被工程师称为"TPU 的心脏"。
- 累加器(Accumulators):4 MiB 32-bit 存储,即 4096 个各含 256 个元素的累加器。之所以是 4096:谷歌发现每字节运算次数达到峰值约需 1350,先向上舍入到 2048,再翻倍让编译器在峰值运行时能使用双缓冲。
- 控制指令(Control):四级流水线设计,指令集为 CISC,共 12 条指令,平均每条指令执行 10~20 个时钟周期。核心指令包括:
Read_Host_Memory:从 CPU host 读取数据到 Unified BufferRead_Weight:从 Weight DRAM 读取数据到 Weight FIFOMatrix_Multiply/Convolve:执行乘法或卷积运算Activate:执行 ReLU、Sigmoid 等激活计算Write_Host_Memory:把计算结果从 Unified Buffer 输出到 CPU host
由于目标是单一的神经网络推理,TPU 控制逻辑只占芯片面积的 2%,远低于 CPU/GPU,配合简化的设计、增大的片上内存与缩小的芯片面积,成本与良品率都更优。
2.2 三大优化特性
特性一:低精度(量化)。推理并非总需要 FP32/FP16 精度。TPU 通过量化把权重和激活从 FP32/FP16 转为 INT8,实现模型压缩——INT8 能近似表示预设最小值和最大值之间的任意数,同时优化存储与计算效率。单个数据点虽失去超高精度,但整体数据分布保持大致准确;得益于神经网络泛化能力,分类等推理任务可在接近原始精度下获得更快速度和更低资源消耗。
特性二:脉动阵列 & MXU。CPU 通用性强,但寄存器、ALU、程序控制付出了功耗和面积代价;MXU 只需用 ALU 大批量处理矩阵加乘,输入数据在运算中被多次复用,某些情况下每个输入值只读取一次即可用于多个操作。
MXU 本质是一个包含 256×256=65536 个 ALU 的超大脉动阵列,每个时钟周期可处理 65536 个 INT8 加乘运算。与 700MHz 相乘,TPU v1 每秒可处理约 4.6×10¹² 次加乘运算。Systolic(脉动)一词源自"心脏收缩"——数据在阵列中像心脏泵血一样有节奏地流动。
特性三:专用硬件(Minimal and Deterministic Design)。CPU/GPU 为当"多面手"导致行为难以预测、延迟不可控;TPU 只服务神经网络推理,控制逻辑仅占 2%,设计简单实用,延迟可预测。
2.3 脉动阵列的计算原理
仓库文档以两个 3×3 矩阵为例,逐拍拆解了脉动阵列工作过程:矩阵 A 与 B 的数据被人工错位、以阶梯状分别从左侧和上方进入阵列(A 的每一行点乘 B 的每一列)。
- T=1:a₀,₀ 与 b₀,₀ 进入第一个处理器计算;
- T=2:a₀,₀、b₀,₀ 沿原方向传到下一个处理器,与新传入的 a₁,₀、b₀,₁ 计算;同时 a₀,₁、b₁,₀ 进入第一个处理器与上一轮结果累加;
- 依此类推(T=3 至 T=7),数据如波浪般流过阵列,最终在下方输出矩阵 A 每一行与矩阵 B 每一列的点乘结果。
关于延迟:TPU 采用流水线技术,CISC 使用四级流水线处理指令;Matrix_Multiply等指令耗时较长,TPU 通过指令重叠(overlap)技术隐藏延迟——一条计算指令未完成时已开始准备或执行下一条,从而抵消计算延迟对整体性能的影响。
2.4 与 CPU/GPU 的竞品对比
- TPU v1 使用 SIMD,GPU 使用 SIMT;TPU 通过多级流水隐藏时延、减少缓存/乱序执行/多线程/预取,更符合神经网络的计算逻辑。TPU 的目标是提高计算吞吐,GPU 则通过多级缓存和计算核心降低延迟,二者本质目的不同。
- 谷歌用屋顶线性能模型(Roofline Model),基于 MLP、LSTM、CNN 三大类六个模型,在 Haswell E5-2699 v3(CPU)、NVIDIA K80(GPU)和 TPU v1 上实验,TPU v1 时延更低、用户体验更好。
- 单 Die 对比优势:计算性能(每秒约 9.2×10¹² → 92 TOPS);片上大缓存对抗 2015 年前后缓慢的内存访问;首次在推理场景引入 INT8 量化,配合大缓存可放入更大 batch。
三、TPU v2:面向训练的特定领域超级计算机
2017 年谷歌推出 TPU v2,定位"用于训练神经网络的特定领域超级计算机"(恰逢《Attention Is All You Need》发布,TPU v2 也是支撑 Transformer 时代的重要算力底座)。
3.1 训练场景的难点
06TPU2.md 归纳了五个难点:
- 更难的数据并行:推理任务彼此独立可横向拓展;训练需一个模型迭代百万次、每次调整全部参数,须跨集群协调并行。
- 计算复杂度更高:反向传播需对每一层每个权重和输入求偏导,包括高精度激活值和转置权重矩阵乘法(Wᵀδ)。
- 内存需求更大:前向/反向传播的临时变量(每层激活值、优化器值)会把模型膨胀至原始大小的 8~9 倍。
- 更具可编程性:训练算法和模型快速变化,芯片需适应日新月异的架构更新。
- 高精度数据格式:INT8 可用于推理,但训练需 FP16、BF16、FP32 等混合精度以保证收敛、捕捉梯度信息。
3.2 TPU v2 相对 v1 的四处改动
- 改动一:Vector Memory——把 Accumulators 与 Activation Pipeline 两个独立缓冲区合并为 Vector Memory(更像传统 L1 Cache),提升可编程性。
- 改动二:Vector Unit——v1 的 Activation Pipeline 是专为激活函数场景特殊处理的 ALU;v2 改为 Vector Unit,处理一系列向量激活函数。
- 改动三:MXU——v1 中 MXU 与 Vector Memory 相连;v2 将 MXU 与 Vector Unit 相连,数据出口和计算都由 Vector Unit 分发,MXU 成为 Vector Unit 的协处理器,对编译器和编程人员更友好。
- 改动四:DDR3→HBM——训练产生大量中间层变量,DDR3 回写速度不足;v2 将 HBM 与 Vector Memory 放在一起,读写速度提升约 20 倍。
3.3 计算核心拆解
- 标量单元(Scalar Unit):处理起点,从指令存储器取出完整 VLIW(超长指令集)指令,执行标量操作并分发给向量/矩阵单元。VLIW 由两个标量槽、四个向量槽(两个用于向量加载/存储)、两个矩阵槽(一推一弹)、一个杂项槽和六个立即数组成。Core Sequencer 从 Instruction Mem 取 VLIW(4K 32-bit 标量内存、32 个 32 位标量寄存器),将向量指令送往 VPU。
- 矢量单元(Vector Unit):含 128 个 Vector Lane,每通道有 8 路执行维度(子通道),每子通道配备双发射 32 位 ALU 并连接 32 深度寄存器文件;每时钟周期可同时操作 8 组 128 宽度矢量,特别适合批量归一化。
- 矩阵乘法单元(MXU):v2 选用 128×128 而非 v1 的 256×256。谷歌模拟器显示:四个 128×128 MXU 的卷积模型利用率 37%~48%,明显高于单个 256×256(22%~30%),且占相同芯片面积——因为部分卷积天然小于 256×256 会导致闲置;十六个 64×64 利用率虽稍高(38%~52%)但需要更多面积(小 MXU 面积受 I/O 和控制线限制)。因此 128×128 在带宽、面积、利用率间达到更好平衡。此外 v2 的 MXU 使用 bfloat16 乘法 + 32 位浮点累加;BF16 相比 IEEE FP16 有约 1.5 倍能效优势,且无需损失缩放(loss scaling),更易用、更省面积,后被业界广泛采用。
- 转置/规约/置换核心(TRP Unit):支持 128×128 矩阵的转置、规约、置换等特殊操作,允许矩阵数据重排,优化反向传播中常见的矩阵场景。
3.4 芯片互联与 Pod
TPU v1 是单芯片推理协处理器;v2 在板上设计了 Interconnect 模块(Interconnect Router)用于高带宽规模化。每个芯片有四个自定义核间互联(ICI)链接,每链路每方向 496 Gbit/s。TPU v2 Pod 采用 16×16 二维环网(256 芯片),双向带宽 32 条链路 × 496 Gbit/s = 15.9 Tbit/s——是传统 Infiniband 集群(64 端口 × 100 Gbit/s ≈ 6.4 Tbit/s)的 2.5 倍,且省去了网卡、交换机及经 CPU 主机通信的延迟成本。TPU v2 芯片平面布局中,两个核心一上一下,互连路由器位于中间提供核心间互联,两个 MXU 分别位于顶部/底部中心。
四、TPU v3:POD 形态与水冷超节点
4.1 v3 相对 v2 的提升
07TPU3.md 给出的三代对比表(注意表中 TOPS 口径为整卡/模块级):
| TPU v1 | TPU v2 | TPU v3 | |
|---|---|---|---|
| Date introduced | 2016 | 2017 | 2018 |
| Process node | 28nm | 16nm | 16nm |
| Die size (mm²) | 330 | 625 | 700 |
| On-chip memory (MB) | 28 | 64 | 64 |
| Clock speed (MHz) | 700 | 700 | 940 |
| Memory | 8 GB DDR3 | 16 GB HBM | 32 GiB HBM |
| Memory bandwidth | 300 GB/s | 700 GB/s | 900 GB/s |
| TDP (W) | 75 | 280 | 450 |
| TOPS | 92 | 180 | 360 |
| TOPS/W | 0.31 | 0.16 | 0.56 |
TPU v3 晶体管数量增加 11%,时钟频率、互连带宽、内存带宽提升约 1.35 倍,MXU 数量翻倍(2→4),面积仅增 6%,理论峰值性能提升 2.7 倍。更关键的是能效大幅领先:用水冷代替风冷,使芯片更容易运行在合理温度下,为 TPU v3 提供了约 1.6 倍的功率支持。
4.2 从单卡到集群:基本概念澄清
在 2017~2018 年(BERT 出现前),多数人并不相信一个模型需要集群训练;实际上仅 3 亿参数的 BERT 就在 4 个 TPU v3 Pod 上训练了四天,而当今万亿参数模型普遍用万卡集群训练数个月。
分布式架构(参数服务器):训练需在每张计算卡上计算损失和梯度,再聚合梯度、更新并广播参数,可用同步或异步方式:
- 同步并行:全部节点完成本次通信后再进行下一轮本地计算。优点:执行逻辑与串行等价、易保证一致性;缺点:早完成的工作节点需等待其他节点,浪费计算硬件。
- 异步并行:当前 batch 迭代完即与其他服务器通信传输参数。优点:执行效率高、无阻塞等待;缺点:模型可能不收敛、训练时间长、参数反复使用难以工业化。
Host Bound 与 Device Bound:Host Bound 指计算受主机资源(通信或主机负载)限制;Device Bound 指受设备算力限制。大模型训练数据量大、计算复杂,集群环境通常是 Device Bound。
4.3 Pod 形态与通信
谷歌官方定义:"TPU Pod 是一组通过专用网络连接在一起的连续 TPU 单元。"
- TPU v2 基板:四个 TPU v2 芯片与散热片(A);2 个 BlueLink 25GB/s 电缆接口(B,IBM BlueLink 端口协议);Intel OPA 电缆(C,类似 InfiniBand);电路板电源连接器(D)。支持 10Gbps 以太网与 100Gbps Intel OPA 两种网络配置。
- TPU v2 Pod:每机柜 64 个 CPU 板 + 64 个 TPU 板,共 128 个 CPU 芯片和 256 个 TPU v2 芯片;TPU 集群居中、CPU 在两侧(BlueLink/OPA 铜缆和光纤长度受限,需避免信号衰减);机柜中看不到存储模块,数据经数据中心网络连接至 CPU。
- TPU v3 基板:与 v2 结构相似,但散热改为液冷散热管;TPU v3 Pod 规模为 1024 芯片,是 v2 的 4 倍。
- 虚拟架构:AI 框架通过 RPC 远程连接 TPU Host,基于 CPU 控制 TPU 实现互联运作。
算力对比:TPU v2 Pod(256 块 v2)= 11.5 PFLOPS;TPU v3 Pod(1024 块 v3)= 100 PFLOPS。TPU v3 本质是 v2 的强化版,核心架构差异不大,主要提升在于规模化能力。
Pod 通信方式:谷歌在 v2/v3 Pod 采用 2D Torus 网络,每个 TPU 与相邻 TPU 直接连接形成二维平面网络,减少通信延迟和带宽瓶颈。通过 all-reduce 方法优化同步训练,避免对参数服务器的依赖,同等资源下性能领先异步 SGD。
五、TPU v4:稀疏计算与光路交换
5.1 TPU v4 架构概览
TPU v4 与 v3 相隔四年(期间英伟达迭代了 Volta、Ampere、Hopper 三代架构,PyTorch 取代 TensorFlow 成为首选训练框架)。每个 TPU v4 有两个 Tensor Core,每个 Tensor Core 含六个单元:四个 MXU(脉动阵列)+ Scalar Unit + Vector Unit;两个 HBM 模块分别放在 Tensor Core 左右两侧以降低电缆时延。
产品形态要点:7nm 工艺;MXU 数量较 v3 翻倍,内存增至 244 MB(HBM 仍 32 GB,带宽增至 1.2 TB/s,提升 33%);新增 Sparse Core 支持稀疏计算;首次采用 3D Torus 互联,紧密耦合 4096 个 TPU v4 引擎,TPU v4 Pod 总计 1.126 Exaflops BF16 峰值算力。
5.2 Sparse Core 稀疏计算核
Embedding 层的本质:Embedding 处理离散型分类特征,是稀疏化典型计算范式。输入矩阵中存在极大量 0,按传统矩阵方式会重复计算大量 0 相乘,浪费资源;且稀疏变量的小规模内存访问易触及 CPU 和 DRAM 性能瓶颈(尤其在 TPU:CPU 4:1 集群上)。因此需要将稀疏特征压缩为稠密表达,例如搜推场景经典的 Wide & Deep 模型——wide 部分是广义线性模型,deep 部分是把稀疏用户特征先处理成稠密 Embeddings 再进入全连接神经网络的隐藏层。
Sparse Core 核心架构(见 08TPU4.md 配图 08TPU404.png):16 个 tiles(计算瓦片)是最通用单元,每个瓦片关联一个 HBM 通道,支持多个内存访问;每个瓦片有 Fetch Unit(从 HBM 读取激活与参数到 2.5 MiB 稀疏向量内存 Spmem 切片)、可编程 8 路 SIMD 向量处理单元(scVPU,区别于 Tensor Core 的 VPU)、Flush Unit(反向传播时将更新参数写回 HBM);另有五个跨通道单元在 16 个 Spmem 上执行嵌入操作。与 TPU v1 类似,这些单元执行类 CISC 指令、处理可变长度输入。TPU v4 在 Sparse Core 中原生支持 Embedding 的模型并行和数据并行,为大集群内的 Embedding 计算提供并行灵活度。
5.3 TPU v4 Pod:Cube、3D Torus 与 OCS
谷歌将 4×4×4=64 个 TPU v4 芯片互联成立方体结构(Cube),再把 Cube 用光互联连成含 4096 个 TPU v4 的超级计算机。OCS(光交换器)由 64 颗 TPU 构成一组 Slice 间互连,实现 Pod 内 Slice 间全光互连,也可用于 Pod 之间。在芯片可靠率 99% 时,可配置光互连可使系统平均性能提升高达 6 倍。
3D Torus 拓扑:每个节点通过三个维度与相邻节点连接,可在 X-Y-Z 上形成连续循环,提供高带宽、低延迟;Cube 若要实现 6 面连接,每面需 16 条链路、每个 Cube 共 96 条光链路连到 OCS;每个 Cube 连接到 6×16÷2=48 个 OCS,48 个 OCS 连接 64 个 Cube 的 48 对光缆,并联 4096 个 TPU v4。每个端口对应一颗芯片,端口连接交换机提供 6 Tb/s 带宽。这意味着搭建一个 TPU v4 集群需要 4096 片 TPU v4 + 48 个 OCS,成本相当高。
与 NVIDIA 集群对比:DGX SuperPod 搭配第四代 NVLink/NVSwitch 最多连接 32 节点共 256 颗 H100,每颗 GPU 900 GB/s 互连带宽;NV 每机架 4 台 DGX(32 颗 H100),需要更多收发激光器和光纤,网络成本高;若部署 4096 颗 GPU 需切分多个 SuperPod 并多层交换,约需采购 568 个 Infiniband Switch。反观 TPU v4 Pod 按切片(64/128/256 芯片)提供算力,OCS 成本不到系统成本的 5%、功耗不到系统功耗的 3%;Sparse Core 可将依赖嵌入的模型加速 5~7 倍,但仅使用 5% 的裸片面积和功耗。
5.4 Palomar 光路交换机
OCS 光路开关芯片名为 Palomar,基于 MEMS 反射镜阵列技术:使用 2D MEMS 反射镜阵列,通过控制反射镜位置调整光路实现切换,具备低损耗、毫秒级低切换延迟、低功耗、低成本特点。每个陶瓷封装内含单个大型芯粒,芯粒中有 176 个可单独控制的微反射镜,每个微反射镜四周有四个梳状驱动区域,用于在两个方向旋转反射镜。
工作原理:带内光信号路径(绿色)叠加 850 纳米波长监控通道(红色,用于校准镜面);输入/输出光信号经 2D 光纤准直器阵列(NxN 光纤阵列 + 2D 透镜阵列)进入光学核心,两组 2D MEMS 阵列在监控通道校准下驱动、倾斜镜面,将信号切换到对应准直光纤。与传统交换机"光→电→光"转换相比,OCS 提供光到光的转换,节省大量电力并解决时延问题。
5.5 TPU v4 优缺点分析
优点:低时延(3D Torus 相邻节点短直接连线,适合密集 I/O 紧耦合并行任务);低网络代价(同节点数下网络直径低于 Clos,交换机/线材/连接器保有量更低);路由可重配(OCS 支持动态可重配路由,集群部署后可立即投产,易于隔离/下线故障节点);更好集群布局(物理相邻节点在逻辑上临近,密集通信发生在局部流域,优化延迟和功耗)。
缺点:系统成熟度低(Clos 拓扑非阻塞、性能一致可预测,3D Torus 无法保证);拓扑僵硬(Clos 扩容叶交换机简单,3D Torus 扩缩需重新配置整个拓扑);负载均衡问题(Clos 任意两节点间路径更多,替代路径数量多于 3D Torus)。
六、特斯拉 DOJO:近存计算路线的代表
与 TPU 的"脉动阵列 + 数据流"路线不同,DOJO 采用**存算一体(近存计算)**架构,将存储与计算放在一起,统一了高带宽与低延迟。仓库内 DOJO 的正文为 PPT 与视频形式(见 01DOJOArch.pptx、02DOJODetail.pptx、03DOJOSystem.pptx),以下要点整理自其配套字幕资料(srt/01.srt、srt/02.srt、srt/03.srt)。
6.1 DOJO 超级计算机的分层体系
DOJO 是特斯拉自研的神经网络加速超级计算机系统,从底向上分为五层:
- DOJO Core(计算节点):可视为一个微型 PC,拥有独立 CPU、专用内存和 IO,1.25 MB SRAM 作为主存(而非缓存),SRAM 以 400 GB/s 加载数据给 Scalar/Vector 计算、以约 270 GB/s 存储;单个 Core 算力约 1.024 TFLOPS,含四个 8×8×4 矩阵乘计算核心。
- D1 芯片:台积电 7nm 工艺,645 mm² 面积(约一个手指甲盖大小),集成约 500 亿晶体管;含 354 个 DOJO Core(不是 360,因为预留容错率);主打 BF16 与 CFP8 数据格式,BF16/CFP8 算力 362 TFLOPS(与同期 NVIDIA A100 接近),FP32 算力 22.6 TFLOPS,热设计功耗 400 W;片上 SRAM 共 440 MB。
- Training Tile(训练瓦片):5×5=25 颗 D1 裸芯片通过台积电 SoW 晶圆级封装技术封装成一个训练 Tile,整体采用晶圆系统解决方案;片上 SRAM 约 11 GB,算力约 9050 TFLOPS;一个 Tile 大致对应一块 A100 的定位。
- 主机(Cabinet/Server):六个 Training Tile 组成一台主机,内含计算、IO、功率与液冷模块;主机接口含 512 个 x86 内核、8 TB 主存,PCIe 带宽 640 GB/s。
- ExaPOD:每台机柜两台主机,每个 ExaPOD 集成 128 个 Training Tile、约 3000 颗 D1 芯片、100 万个训练节点(DOJO Core),BF16/CFP8 峰值算力达 1.1 EFLOPS,提供约 1320 GB 片上 SRAM。
6.2 DOJO Core 的内部结构
DOJO Core 由四部分构成:Front End(前端)、执行引擎(Execution Engine)、SRAM Memory(存储)、NoC Router(片上网络路由)。
- 前端:BTB(分支目标缓冲区,预测分支路径、缓冲分支信息以减少流水线分支损失)、PC(程序计数器)、I-Cache(L1 指令缓存,直接与 Core 内 SRAM 相连取指令)、Fetch Buffer(取指缓冲,4 路、最多容纳 8 条指令)、Decoder(译码并按指令分配 Scalar/Vector 执行单元);随后是线程调度(Scalar Scheduler、SMT Vector Scheduler)。
- 执行引擎:针对 Scalar 和 Vector 各提供四路 SMT;执行单元含两路 ALU、两路 AGU、512 位 SIMD,以及最核心的 MatMul 矩阵计算单元(类似 NVIDIA Tensor Core)。
- 存储与寻址:代码不能直接访问系统内存,只能访问自己的 SRAM 与矩阵计算单元(与 NVIDIA 的共享内存/全局内存/本地内存体系完全不同);本地 SRAM 完全由编译器管理,不能用作缓存;不支持虚拟内存,SRAM 中存放的是物理地址,借此减少控制部件面积、把更多面积留给 MatMul 和 ALU。
- NoC 路由:把众多 DOJO Core 连成非常大的 2D 网络,每个时钟周期可在四个方向上以 64B 粒度读写搬运数据到具体 SRAM。
DOJO Core 的设计哲学是三个"精简":面积精简(把大量计算核心集成进芯片,最大化 AI 计算吞吐)、延迟精简(内核以 2 GHz 运行,只保留基本分支预测和小指令缓存,去掉对 AI 计算不必要的部件,把面积留给向量化张量计算)、功能精简(不支持数据端缓存、虚拟内存、精确异常,一切为提升 AI 计算吞吐服务)。
6.3 DIP 与系统级互联
- DIP(DOJO Interface Processor):以 PCIe 插槽形态出现的高带宽内存卡,内含 32 GB HBM;传输协议是特斯拉自定的 TTP(Tesla Transport Protocol);在特斯拉主机与 Training Tile 之间通过 DIP 连接。
- 带宽数据:最多可将 5 个 DIP 以 900 GB/s 连接到一个 Training Tile,使 Training Tile 吞吐达 4.5 TB/s;每个 Training Tile 拥有 160 GB HBM(32 GB × 5)。D1 芯片布满了 576 个双向串行通道接口,单边带宽约 4 TB/s。
- Z 平面链路:主机内的 TTPOE 可将标准以太网转换为 Z 平面拓扑,用于 Training Tile 间的数据交换与存算一体协同,绕过冗长的 2D 网络路径,实现跨系统访问数据。
- 通信优化:系统通信依赖 AI 编译器,如编译通信树、barrier domain、lookup table 等机制,将通信树索引触达到每个 DOJO Core,加速索引和运算;避免逐节点传输导致的低效线程唤醒(本地/远程线程执行与休眠调度)。
6.4 DOJO 与 A100 的对比及软件思考
从字幕资料看,DOJO D1 与同期 A100 对比:片上 SRAM 接近 A100 的 10 倍;算力相近(362 vs 312 TFLOPS,FP16/BF16 口径);计算核心数量上 A100 128 个 SM × 4 个 Tensor Core 与 DOJO 354 个 Core 相差不大,A100 甚至略有优势——但 DOJO 因存算一体架构,整体吞吐更高。
字幕资料也提出了软件层面的开放性问题:DOJO 高度依赖 AI 编译器生态,若需对接业界 TVM 等工具链存在较大挑战;对云服务多任务场景的任务分配支持尚不明确;训练精度异常等模块、以及自研模型调试的易用性,都留待时间去验证。
七、总结:两条路线的对照
纵观「国外 AI 芯片」章节,可以清晰提炼出两条技术路线:
| 维度 | 谷歌 TPU | 特斯拉 DOJO |
|---|---|---|
| 加速范式 | 数据流(Data Flow) | 近存计算(Near Memory) |
| 计算核心 | 256×256/128×128 MXU 脉动阵列 | 4 路 8×8×4 MatMul + 512-bit SIMD |
| 关键精度 | INT8(v1)、BF16(v2+) | BF16、CFP8 |
| 内存策略 | DDR3→HBM,累加器/Vector Memory | 大容量片上 SRAM 作主存(编译器管理) |
| 规模化 | 2D Torus(256/1024 芯片)→ 3D Torus(4096 芯片 + OCS) | Tile→主机→ExaPOD(1.1 EFLOPS) |
| 设计哲学 | 低精度 + 专用硬件 + 简化控制 | 面积/延迟/功能三重精简 |
TPU 系列验证了"算法-芯片协同设计"的价值:量化、BF16、Sparse Core 均围绕深度学习特性定制;DOJO 则验证了"以近存计算消除访存瓶颈"的另一种可能。仓库中 Groq 芯片(09Groq.pdf)作为本章节的另一个独立产品形态(PPT 形式),可结合视频资料继续深入学习。
进一步学习可继续阅读同章节的 04TPUIntrol.md(TPU 发展史)、05TPU1.md(脉动阵列原理)、06TPU2.md(训练芯片)、07TPU3.md(POD 形态)、08TPU4.md(光路交换),以及整个硬件篇的入口 02Hardware/README.md。
- 文档
- 教程
- 人工智能
【免费下载链接】AISystem
AISystem 主要是指AI系统,包括AI芯片、AI编译器、AI推理和训练框架等AI全栈底层技术
相关推荐
谷歌 TPU 历史发展全解析:AISystem 视角下的 AI 芯片架构演进与脉动阵列设计
谷歌 TPU 历史发展全解析:AISystem 视角下的 AI 芯片架构演进与脉动阵列设计 本文是 AISystem(AI 系统全栈底层技术)课程中《国外 AI
文档教程人工智能谷歌 TPU v1 脉动阵列架构深度解析:芯片布局、数据流与矩阵乘法原理
谷歌 TPU v1 脉动阵列架构深度解析:芯片布局、数据流与矩阵乘法原理 本篇文章基于仓库《国外 AI 芯片》系列中的 05TPU1.md https://li
文档教程人工智能谷歌 TPU v4 与光路交换:AISystem 视角下的 AI 芯片架构与超级互联解析
谷歌 TPU v4 与光路交换:AISystem 视角下的 AI 芯片架构与超级互联解析 本文是 AISystem 仓库《国外 AI 芯片》系列课程的 TPU
文档教程人工智能
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考