CPU、GPU、TPU 到底谁更“聪明”?从逻辑运算到光互连,一篇看懂 AI Infra

朋友最近问了我两个问题。一个是:“GPU 的逻辑能力不强,逻辑运算应该是 CPU 更强吧?”另一个是:“一体封装出来以后,光模块就没有未来了,只剩光纤?”

两个问题都踩在真实的技术趋势上,也都把一个系统问题压成了“谁强谁弱、谁取代谁”的判断题。第一句对了一半,而错的那一半,恰好是理解 GPU 的钥匙;第二句基本不成立,但它错的方式很有代表性——把“产品形态的变化”当成了“功能的消失”。

要把这两个问题说清楚,得从 CPU、GPU、TPU 各自的设计出发点讲起,再经过内存墙、互连和软件栈,最后回到光模块。这篇文章就把这条线走完。不背产品参数,只讲“为什么这样设计”——参数每年都换,设计逻辑十年不变。


一、先把三兄弟放在一张表里

维度 CPU GPU TPU(本文特指 Google TPU)
第一目标 单线程、少量线程的低延迟 大规模并行吞吐 矩阵计算的吞吐与能效
典型硬件 少量复杂核心、大缓存、分支预测、乱序执行 上百个 SM、Warp/SIMT、CUDA Core、Tensor Core 少量 TensorCore(MXU 脉动阵列 + 向量 + 标量单元)、SparseCore
怎么对付延迟 预测、推测、乱序,尽量不等 海量线程轮转,谁的数据到了就跑谁 编译器提前排好数据搬运和执行节拍
内存思路 多级硬件缓存隐藏不规则访存 寄存器、共享内存、L2、HBM 分层复用 软件管理的 VMEM 暂存 + HBM
最舒服的任务 分支多、串行依赖、不规则、任务小 大批量、数据并行、矩阵/向量密集 形状稳定、矩阵占比高、可编译成规则数据流
常见软件 C/C++、Java、数据库、操作系统 CUDA、cuDNN、PyTorch、Triton、NCCL JAX/PyTorch、XLA、Pallas
典型角色 主机、调度、预处理、业务控制 通用加速:训练、推理、渲染、HPC Google 体系内的大规模训练与推理

CPU、GPU、TPU 的架构与设计取舍

这张图值得记住的不是“CPU 核少、GPU 核多”,而是底下那行小字:芯片面积和功耗是死的,每换一种花钱方式,都要牺牲另一种能力的密度。三种芯片不是三个段位,是三份不同的预算分配方案。


二、三种芯片,三种花钱方式

CPU:为“不可预测”买单

通用代码的第一特征是不可预测:满地的 if/else 和函数调用,指针追着哈希表、树、图到处跳,中断和系统调用随时插队,前一条指令的结果决定下一条干什么。

现代 CPU 的应对,是把大量晶体管花在“猜”上。分支预测器每个周期都在猜下一条指令从哪取,主流设计的命中率能做到 95% 以上——但猜错一次,十几级流水线里的工作全部作废;乱序引擎把不依赖当前结果的后续指令提前执行;推测执行沿着猜测的路径先跑起来,错了再回滚;多级缓存负责把不规则的访存伪装成低延迟。这些机制没有一个在“算”,它们都在让等待消失。

所以 CPU 的核心数是几十到上百,而每个核心都很“重”。它的目标是延迟:一个请求进来,尽快出去。

GPU:用人海掩盖等待

GPU 的出发点相反。图形渲染要对几百万像素做同一套运算,AI 的矩阵计算也一样:一条计算规则,作用于海量数据。这种任务不需要每个线程都配备分支预测和乱序引擎,它需要的是数量。

一张 H100 上有 132 个 SM(流式多处理器),合计一万六千多条 FP32 通道。硬件把线程按 32 个一组编成 Warp 调度:一个 Warp 在等内存,调度器就切去跑另一个 Warp。CPU 靠预测隐藏延迟,GPU 靠“手头永远有别的活”隐藏延迟。它优化的不是单个任务多快结束,而是单位时间完成的总量。

另外,现代 GPU 早就不是“一堆小 ALU”。SM 里同时住着做通用算术和逻辑运算的 CUDA Core、专做矩阵乘加的 Tensor Core、访存和特殊函数单元;存储从寄存器、共享内存、L2 一路分层到 HBM;再往外还有 NVLink/NVSwitch 的多卡互连。这个清单后面会反复用到。

TPU:为“确定性”重排一切

TPU 是从工作负载倒推出来的机器。Google 在 2015 年部署第一代 TPU 时的判断是:推理负载的主体是矩阵乘加,而矩阵乘加的循环边界、访存模式在运行前就全部已知——那么 CPU 和 GPU 为“不确定性”准备的机制,缓存、乱序、推测、复杂调度,统统是可以省掉的开销。2017 年那篇著名的 TPU 论文把这个立场写得毫不客气,几乎逐条否定了通用处理器的经典设计。

省下来的面积去了哪里?一个 256×256 的脉动阵列:65,536 个 8-bit 乘加单元排成网格,权重驻留在阵列中,激活值按时钟节拍从一侧流入,部分和在相邻单元间接力,结果从另一侧流出。每个单元不取指令、不做调度,唯一的工作是乘加和传递,所以同样的面积能塞进远多于通用设计的运算单元。这颗 92 TOPS(INT8)的芯片上没有硬件管理的缓存,只有 24 MiB 由软件显式管理的片上缓冲。

今天的 TPU 复杂了很多,骨架没变。TensorCore(Google 文档里的用词,和 NVIDIA 的 Tensor Core 不是一回事)由三部分组成:MXU 脉动阵列做矩阵乘加,向量单元处理激活函数、Softmax、归一化这些逐元素运算,标量单元管控制流和地址计算。VMEM 是编译器显式管理的片上 SRAM,站在 GPU 里 L1/L2 的位置上;SparseCore 专门处理嵌入查表这类 MXU 极不擅长的稀疏访存;芯片之间用 ICI 高速互连。数据什么时候从 HBM 搬进 VMEM、以什么布局喂给 MXU,全部由 XLA 编译器在编译期排定。

顺带澄清一个名词:TPU 特指 Google 的产品线;行业里更宽泛的叫法是 NPU,各家 NPU 内部可能是脉动阵列、向量引擎或别的数据流结构,差异很大,不能都按 TPU 来理解。

边界正在互相渗透

真实产品从不严格站队。CPU 这边加了向量和矩阵扩展(AVX-512、Intel AMX、Arm SVE/SME);GPU 的 Tensor Core 一代比一代大、一代比一代独立;TPU 反过来在补向量灵活性和稀疏处理。最直白的信号是 CUDA 13 正式加入了 Tile 编程模型:程序员按“数据块”描述计算,线程怎么排交给编译器,块内单一控制流、没有分支发散的概念——这套叙事,十年前是 TPU 的专利。

所以三类芯片的差别从来不是“能不能做”,而是做某类任务时,有多大比例的硅面积在产出有效工作。


三、AI 负载长什么样

主体是矩阵乘法

以 Transformer 为例,计算时间大头花在 Q/K/V 投影、Attention 内部的两次矩阵乘、输出投影、FFN 层的矩阵乘,以及训练时对应的反向传播上。矩阵乘法的特点是:乘加操作海量重复,循环边界和访存模式提前可知——这正是 Tensor Core 和 MXU 的主场。

但模型里还有 Softmax、LayerNorm、激活函数、采样、稀疏路由、Embedding 查表这些非矩阵部分,它们会落到 GPU 的 CUDA Core、TPU 的向量单元或 SparseCore,有些干脆留在 CPU 上。一轮训练或推理,从来不是某一种计算单元的独角戏。

精度是第二根杠杆

AI 对单个数值的精度要求远低于科学计算。训练主流是 BF16,FP8 正在铺开;推理进一步用到 INT8、FP8 甚至 FP4。位宽砍半的收益是三重的:同样的内存放下双倍参数,同样的带宽搬运双倍数据,同样的面积摆下更多低位宽运算单元。

当然“位数越低越好”是误解。低精度需要缩放、校准和足够的累加精度兜底。现在小位宽的主流玩法是微缩放(microscaling,如 MXFP8、NVFP4):数值用 4/8 bit 存,每一小组数配一个缩放因子,硬件在计算时把缩放乘回去——存储和带宽按小格式付费,精度靠缩放因子找补。

三种执行模型

执行模型 直观理解 优点 代价
SIMD 一条指令驱动多条数据通道 控制开销低,适合规则向量计算 通道间难以各行其是
SIMT 写起来像独立线程,硬件按 Warp 成组锁步执行 编程灵活,通用并行能力强 同 Warp 分支不一致会发散
脉动阵列 数据按节拍流过二维乘加网格 矩阵密度和数据复用最高 对形状、布局、编译调度敏感

三者不是升级关系,是在控制灵活性、硬件密度、编程难度之间选了三个不同的落点。CPU 的向量扩展是 SIMD,GPU 是 SIMT 套在 SIMD 上,TPU 把宝押在脉动阵列上、旁边配向量单元兜底。


四、真正的主角:内存墙

先记一组数量级:在先进工艺上,做一次乘加只要几个皮焦;从片上 SRAM 取一次数,大约贵一个数量级;从 HBM 取一次,贵两个数量级;跨过 PCIe 或网络,再翻几番。时间同理——乘加是纳秒级以下,HBM 访问是几百纳秒,跨节点是微秒到毫秒。算术很便宜,搬数据很贵,而且这个差距逐年拉大。

数据要走的路——从对象存储、网络、CPU 主存,跨过 PCIe 进入 HBM,再经片上 SRAM、寄存器抵达矩阵单元——一张图看完:

AI Infra 的数据路径与互连层级

越靠近计算单元,存储越快,也越小、越贵。加速器上几乎所有优化,最后都能折叠成一句话:数据搬进来一次,尽量多算几遍,再搬走。

Roofline:一道除法看穿性能

一个内核的性能上限可以粗略写成:

可达性能 ≤ min(峰值算力,内存带宽 × 算术强度)

算术强度(arithmetic intensity)指每搬一个字节做多少次运算。峰值算力除以带宽,得到一个平衡点:算术强度高于它,是算力受限;低于它,是带宽受限,堆再多计算单元也没用。

拿 H100(SXM)算一下:BF16 稠密算力约 990 TFLOPS,HBM3 带宽 3.35 TB/s,平衡点约 295 FLOPs/Byte——每从 HBM 搬一个字节,要做将近三百次运算才喂得饱计算单元。矩阵乘法靠分块复用可以够到这个数;而逐元素加法读两个数、算一次、写一个数,算术强度只有约 0.08,天生贴在带宽墙上。

Roofline 模型:以 H100 为例

再算一笔更扎心的账。70B 参数的模型,BF16 权重 140 GB,恰好放进一张 H200(141 GB HBM3e,4.8 TB/s)。单并发逐 token 解码时,每生成一个 token 至少要把权重完整读一遍:140 ÷ 4.8 ≈ 29 毫秒。也就是说,不管这张卡标多少 PFLOPS,batch=1 的解码上限就是每秒三十来个 token,还没算 KV Cache。为什么推理团队拼命做量化、攒大 batch,为什么 HBM 常年供不应求,这一道除法就够解释了。

沿着同一条逻辑,很多现象都不神秘了:Kernel Fusion 省的是中间结果往返 HBM 的搬运;FlashAttention 的贡献不是发明新乘法,是让注意力矩阵不落 HBM;低精度的首要收益在容量和带宽,其次才是运算速度;批量太小,矩阵单元就吃不饱。

从一颗芯片到一座集群

单卡放不下模型、或者算得不够快,就要扩展,路线有两条。Scale-up 是在机箱和机架内用紧耦合互连把多颗加速器拼成“一台更大的机器”:NVIDIA 这边是 NVLink/NVSwitch,GB200 NVL72 把 72 张 GPU 收进一个 NVLink 域,每卡互连带宽 1.8 TB/s;Google 这边是 ICI,把成千上万颗 TPU 织成 3D 环面(torus)。Scale-out 是跨服务器、跨机架,用 InfiniBand 或以太网把域连成集群。

TPU 还有一件独门武器:从 v4 起,pod 内部用 OCS(光路交换机)连接一个个 4×4×4 的芯片立方体。光路交换不解析数据包,只负责“接线”,好处是可以按作业重构拓扑、绕开故障芯片,代价小得惊人——论文给的数字是系统成本占比不到 5%、功耗不到 3%。

到了几千上万卡的规模,最慢的往往不是矩阵乘法,而是卡间交换梯度和激活的集合通信(All-Reduce、All-Gather、All-to-All)。网络的形状会反过来决定模型怎么切。两个公开的对照很能说明问题:PaLM 540B 在 6,144 颗 TPU v4 上训练,靠 3D 环面的带宽,只用了数据并行加张量并行两个维度,MFU 做到 46.2%;Llama 3 405B 在 16,384 张 H100 上,因为 NVLink 域外要跨到 InfiniBand,带宽有断崖,不得不叠上张量、流水线、上下文、数据四维并行,MFU 约 41%~43%。数字接近,工程复杂度差了一倍——并行策略不是自由选择,是网络形状逼出来的。

同一份 Llama 3 报告还有一组更少被引用的数字:54 天训练里发生 419 次意外中断,平均每三小时一次,其中 30.1% 归因于 GPU 故障、17.2% 归因于 HBM3 故障。在这个规模上,可靠性不是运维话题,是性能的一部分——checkpoint 和故障恢复的速度,直接进有效算力的分母。


五、“GPU 逻辑不强”,对,也不对

回到朋友的第一个问题。“逻辑”这个词至少混着四件事:一是布尔和位运算(AND、OR、XOR、移位、位计数);二是整数运算(地址、索引、哈希、编解码);三是控制流(分支、循环、状态机);四是业务逻辑(事务、协议、服务编排)。把它们拆开,答案就清楚了。

论位运算和整数,GPU 不弱,甚至很强

GPU 的 ALU 本来就叫“算术逻辑单元”。CUDA 指令集里整数运算、比较、移位、位翻转、population count、前导零计数一应俱全。证据不用翻手册:比特币还在用显卡挖的年代,GPU 跑的 SHA-256 就是纯粹的整数与位运算;今天的 GPU 数据库和分析引擎(cuDF 等)做的过滤、哈希 join、字典解码,也全是“逻辑运算”。

对海量相互独立的数据做同样的逻辑,GPU 的吞吐可以远超 CPU;只对一个配置值做一次 AND,当然轮不到 GPU。差别在并行规模和启动开销,不在“会不会逻辑”。

论复杂分支,CPU 确实占优

CPU 有分支预测和乱序执行,擅长在纠缠的控制流里压低单线程延迟。GPU 的软肋在 Warp 上:同一个 Warp 的 32 个线程如果走向不同分支,硬件要把两条路径分别执行——跑 if 时屏蔽走 else 的线程,再反过来。这叫分支发散(warp divergence),结果仍然正确,但有效并行度掉了一半。要是 32 个线程各走一条又长又不一样的路,GPU 的吞吐优势就被磨光了。

一个细节:从 Volta 起,每个线程有独立的程序计数器(独立线程调度),能避免一类死锁、允许更细粒度的交错,但发散的路径依然要分别占用执行时间。硬件保证正确,不保证不浪费。

所以,CPU 赢延迟,GPU 赢规模

任务 更可能合适 主要原因
处理一次 HTTP 请求并查库 CPU 分支多、状态多、单次延迟敏感
对上亿像素做同一个阈值判断 GPU 相同逻辑可大规模并行
小型规则引擎、配置解析 CPU 任务太小,GPU 启动和搬运开销不划算
大批量哈希、位图、压缩 视算法而定,GPU 常有吞吐优势 独立数据多
不规则图遍历 通常 CPU 起步,特定算法可上 GPU 访存不规则、负载难均衡
矩阵乘法后接少量激活与判断 GPU/TPU 主体仍是高密度矩阵计算

判断一个任务归谁,与其问“谁强”,不如按四层过一遍:指令层面,芯片支不支持这种运算(几乎都支持);延迟层面,依赖链多长、分支能不能预测;吞吐层面,有没有成千上万个独立任务可以并行;系统层面,数据在不在显存里、Kernel 启动和 PCIe 搬运要花多久。四层里真正分胜负的,通常是后两层。

严谨版本的回答是:

GPU 不是逻辑运算能力弱,而是没把晶体管花在复杂控制流的低延迟上。少量、串行、分支不可预测的任务归 CPU;海量数据执行相同或相近的逻辑,GPU 往往更快,而且快得多。


六、芯片之外:两套软件栈,两条演进路线

一块加速器好不好用,软件栈的分量不低于硬件。两家的栈长得像,分工的切法不一样:

GPU 栈与 TPU 栈对照

NVIDIA 真正的护城河不是芯片,是左边这一整摞:二十年的 CUDA 生态、调到极致的数学库、所有框架的一等支持、海量已有内核和调试工具,以及“新论文的参考实现默认是 CUDA”这个惯性。研究代码和新算子几乎总是先出现在 GPU 上,这不是规格表能替代的。

右边的 TPU 栈把布局推断、DMA 调度、双缓冲、指令打包全部交给编译器,作者只描述“块”和“流水线”。好处是写出来就不慢、结果逐位可复现(脉动阵列是确定性的);代价是遇到编译器没覆盖的边角算子时,排障要下到编译器的层面,路径和 GPU 完全不同。

两条路线正在对穿

看最近三代硬件的动作会发现一件有意思的事:两边都在往对方的方向走。

GPU 这边,Hopper 引入 TMA,把张量搬运从线程手里拿走、交给异步硬件引擎和描述符;Blackwell 把 Tensor Core 从 Warp 调度器解耦,双 die 合封,NVLink 域扩到 72 卡;CUDA 13 加入 Tile 编程模型。翻译一下:GPU 在一步步引入“编译器排定的数据流”——这正是 TPU 的出身。

TPU 这边,Trillium(v6e)把 MXU 扩到 256×256;最新的 Ironwood(TPU7x)每颗芯片两个 chiplet,各带一个 TensorCore、两个 SparseCore 和 96 GB HBM,合计 192 GB、7.37 TB/s 带宽,FP8 稠密算力约 4.6 PFLOPS,单 pod 用 3D 环面加 OCS 连到 9,216 颗芯片;同时 PyTorch/XLA、vLLM 的 TPU 后端在一点点补生态短板。翻译一下:TPU 在补灵活性和易用性——这正是 GPU 的出身。

单芯片指标上,Ironwood 和 Blackwell 已经咬得很紧;真正拉开身位的是紧耦合域的规模(9,216 对 72/144)和生态成熟度(CUDA 对 XLA)。这两个维度,恰好一家一个。


七、怎么选:从工作负载出发

先看负载,再看品牌

场景 首选起点 需要特别检查
Web 服务、数据库、控制面、数据预处理 CPU 单线程延迟、缓存命中、内存容量
小模型、低 QPS、间歇运行 CPU 或小型 GPU 加速器利用率能否覆盖成本
视觉、语音、LLM 训练 GPU;JAX/GCP 体系可评估 TPU 软件兼容、HBM 容量、通信占比、可用容量
大批量离线推理 GPU/TPU 吞吐、批量、量化、每 token 成本
交互式低延迟推理 GPU/TPU 首 token 延迟、解码带宽、KV Cache、并发
渲染、视频、科学计算 GPU 有没有成熟库、双精度需求
稳定的超大规模训练/推理(Google 系) TPU 吸引力大 XLA 算子覆盖、拓扑与切分
新论文复现、快速试验 GPU 路径最短 生态与调试效率

训练和推理是两种负载,推理自己还要再拆两半

训练要存激活、算梯度、频繁跨设备通信,看重 HBM 容量带宽、低精度稳定性、集合通信效率,以及前面说的 checkpoint 与故障恢复速度。

推理分两个阶段:Prefill 一次吃进整段输入,矩阵大,偏算力受限;Decode 逐 token 生成,批量不足时被权重和 KV Cache 的读取带宽卡死(回想 H200 那道除法)。同一张卡在离线大批量里效率很高,不代表单用户对话时能接近峰值——两个阶段的瓶颈根本不是同一个。

别拿 TOPS 直接比

厂商规格表可能分别标着 FP64、TF32、BF16、FP8、FP4 的峰值,甚至掺着稀疏加成。不同精度的 TOPS 放一列比大小,得出的结论毫无意义。有意义的比较只有:同一个模型同一精度下的有效吞吐、端到端时间、每 token 或每次训练的成本、功耗与机房容量,以及集群规模下的 MFU 和故障恢复。


八、CPO 会杀死光模块吗

回到朋友的第二个问题。先把“一体封装”落到确切的名词上:CPO(Co-Packaged Optics,共封装光学),把光引擎搬到交换 ASIC 或 XPU 旁边、共享封装基板,从而砍掉长长的板级高速电通道。

先看清楚可插拔光模块里有什么

一只高速可插拔模块远不止“光纤接口”。盒子里通常装着:DSP 或均衡电路、激光器、调制器、光电探测器、Driver 和 TIA 模拟前端、温控与监控固件,外加光耦合、连接器、封装和测试。交换芯片通过 PCB 上的 SerDes 把电信号送到面板模块,模块完成电光转换。

问题出在速率上。SerDes 到了 200G/lane,电信号在 PCB 上走几十厘米损耗急剧变大,均衡电路越做越强、功耗越吃越多。CPO 的思路是釜底抽薪:让电信号出了 ASIC 没走几毫米就变成光。

传统可插拔光模块与 CPO 的结构差异

图里画的是外置激光源的一类常见方案,不代表所有实现——不同厂商在光源位置、DSP 去留、光引擎边界上各有取舍。

CPO 改变的是“在哪转换”,不是“要不要转换”

注意,CPO 没有删掉任何光收发功能,它只是把原来集中在一个盒子里的功能拆开、重新安放——完整的可插拔收发模块,变成“共封装光引擎 + 可维护的外置激光源 + 光连接”,上图底部那行总结说的就是这件事。

激光源的去向最能说明问题。激光器怕热,而 CPO 恰恰把光学器件推到了发热大户 ASIC 旁边,于是产业界把激光源单独拎出来放到前面板,做成可插拔、可热更换的模块——OIF 在 2023 年发布的 ELSFP 规范定义的就是这个东西;Broadcom 的 51.2T CPO 交换机 Bailly(8 个 6.4T 光引擎与交换芯片共封装)用的也是可插拔外置光源。CPO 不是消灭了模块,是把模块的边界重新画了一遍。

光纤为什么独自扛不起来

光纤是介质,只会传光。产生稳定光源、把电比特调制到光上、把光转回电、放大与恢复信号、温度补偿、功率监控、波分复用、耦合与测试——这些功能一项都不会因为封装形式变化而消失,只会换个地方存在。无论载体叫光模块、光引擎、光 Chiplet 还是外置激光源,干的都是这些活。

CPO 自己的账单

维度 可插拔光模块 CPO
高速电通道 从 ASIC 走到前面板,长 极短,光引擎紧贴 ASIC
功耗与密度 高速率下压力越来越大 超高带宽下优势明显
维护 坏一只,拔了换新 光引擎与主封装耦合,维修边界复杂
散热 模块在面板,独立热设计 光学器件贴着高功耗 ASIC,热设计难
良率与测试 模块独立制造、测试、筛选 多芯片合封,Known-Good-Die 与耦合测试更难
互操作 MSA 与供应链成熟 标准与多供应商生态仍在成形
落地节奏 各速率、距离、场景通吃 先进入带宽/功耗最紧张的场景

集成度更高不等于处处更好。前面板模块坏了拔掉就换;共封装光引擎出问题,牵连的是整个交换机。外置激光、可拆光连接器、冗余和监控,都是产业为了把可维护性找回来而新做的设计。

实际发生的是共存和价值链迁移

看头部厂商怎么做、怎么说,比看口号准。NVIDIA 在 2025 年 GTC 上发布 Quantum-X 与 Spectrum-X Photonics 交换机(单端口 1.6T,激光器数量减到四分之一,宣称能效 3.5 倍、可靠性 10 倍,液冷设计),InfiniBand 版 2025 年底出货、以太网版 2026 年跟进——同一篇通稿里,NVIDIA 明确表示可插拔光模块技术将与之并行发展,还点名了 Coherent、Fabrinet 和国内读者熟悉的新易盛(Eoptolink)、旭创(InnoLight)。发布 CPO 的人自己都没打算送走可插拔。

未来几年比较合理的图景是:CPO 优先进入交换容量、端口密度和功耗最紧张的 AI 集群;可插拔 DSP 模块继续吃下成熟网络、长距离和多供应商场景;LPO/LRO 作为中间路线,保留可插拔形态、去掉或简化模块内 DSP 来省功耗;板载光学和光 I/O 在不同封装层级继续探路。对厂商来说,“组装完整盒子”的环节在高端市场承压,但激光器、硅光、调制器、探测器、Driver/TIA、光纤阵列、连接器、封装测试的价值不会蒸发,只会重新分桌。

CPO 会减少某些高端交换机里可插拔模块的数量,但消失的是一种产品外形,不是光收发产业。增长的也绝不只有光纤——恰恰相反,光引擎、外置光源和高密度光连接的技术含量比原来更高了。


九、把答案还给朋友

问题一:GPU 逻辑不强,逻辑运算应该 CPU 更强?

如果你说的是复杂分支、串行依赖、低延迟控制,对,CPU 更强,它的分支预测、乱序执行和缓存体系就是为这个造的。但如果说的是 AND、OR、XOR、比较、掩码这类逻辑运算,GPU 不但会做,还能对海量数据同时做——当年挖矿跑的哈希就是纯逻辑运算。GPU 真正的弱点是同一个 Warp 里线程走不同分支时利用率下降。所以别问谁的逻辑强,要问:任务有多少并行度、分支有没有规律、数据在谁的内存里。

问题二:一体封装以后,光模块没有未来,只剩光纤?

如果你说的是 CPO,它确实会把光引擎从面板模块搬到交换芯片旁边,一部分可插拔模块会被替代。但光纤只负责传输,不会发光、调制、探测和监控——这些功能全都还在,只是换了封装位置,激光源甚至专门做成了可插拔的(OIF 还为此定了 ELSFP 标准)。连发布 CPO 交换机的 NVIDIA 都在通稿里写明可插拔技术并行发展。所以不是“光模块消失、只剩光纤”,而是“完整的盒子被拆成共封装光引擎、外置激光和光连接”,两种形态会共存很多年。


十、写在最后

这两个问题背后其实是同一个思维习惯:把系统问题压成单点对决。但现代 AI Infra 里没有单点——CPU、GPU、TPU 是三份不同的晶体管预算,光模块和 CPO 是两种光电转换的安放方式,芯片性能要过内存墙、互连、编译器、调度和可靠性的层层折扣才变成有效算力。

如果只带走一句话,带这句:

AI Infra 的竞争,不是芯片之间的一对一决斗,而是看谁能让数据用更低的能耗、更少的等待、更高的可靠性,从存储流到计算单元,再流到下一颗芯片。


附录:术语速查

术语 含义
ALU 算术逻辑单元,执行算术、比较、位运算
MAC 乘加运算,矩阵计算的基本动作
SIMD 单指令多数据
SIMT 单指令多线程,GPU 的执行模型
Warp NVIDIA GPU 中成组调度执行的 32 个线程
SM Streaming Multiprocessor,GPU 的基本执行单元
Tensor Core NVIDIA GPU 中的矩阵乘加单元;Google 文档里的 TensorCore 是另一个概念(MXU+向量+标量的组合)
MXU TPU 的矩阵乘法单元,核心是脉动阵列
HBM 高带宽内存,加速器的片外主存
VMEM TPU 上由编译器管理的片上暂存 SRAM
ICI Inter-Chip Interconnect,TPU 芯片间高速互连
Tiling 把大张量切块,让数据在片上反复复用
算术强度 每搬一个字节做多少次运算,Roofline 模型的横轴
MFU Model FLOPs Utilization,有效算力利用率
Scale-up / Scale-out 紧耦合域内扩展 / 跨节点网络扩展
CPO 共封装光学,把光引擎放到主 ASIC 旁边
LPO / LRO 保留可插拔形态、去掉或简化模块内 DSP 的两类路线
ELSFP OIF 定义的可插拔外置激光源规范
OCS 光路交换机,通过重构光路改变互连拓扑

资料来源与延伸阅读

本文的框架部分参考了 Adam Mainz 的两篇长文(他刚从 Meta 的 Triton 编译器团队转到 Google TPU 团队,文章立场偏 TPU,本文未采纳其平台优劣结论),产品规格与 CPO 进展均用一手资料交叉核验。

  1. Adam Mainz, From SIMT to Systolic: A Foundation for GPU and TPU ArchitectureThe Two Stacks
  2. NVIDIA, CUDA Programming Guide(SIMT、Warp 与 Tile 编程模型)
  3. NVIDIA, Hopper Tuning Guide(TMA 与内存层级)
  4. NVIDIA, Blackwell Architecture
  5. Jouppi et al., In-Datacenter Performance Analysis of a Tensor Processing Unit(TPU v1 论文)
  6. Jouppi et al., TPU v4: An Optically Reconfigurable Supercomputer for Machine Learning
  7. Google Cloud, TPU System ArchitectureTPU7x(Ironwood)
  8. Chowdhery et al., PaLM: Scaling Language Modeling with Pathways(46.2% MFU 与 pipeline-free 训练)
  9. Meta, The Llama 3 Herd of Models(4D 并行与 54 天故障统计)
  10. OIF, ELSFP Implementation Agreement 发布通告Implementation Agreements 列表
  11. Broadcom, What Is Co-Packaged Optics?CPO 产品页
  12. NVIDIA, Spectrum-X / Quantum-X Photonics 发布通稿(含可插拔并行发展与合作伙伴名单)

资料与产品状态核验日期:2026-07-19。

相关文章

关于作者

热爱开源与分享。主要从事混合云、数据库 SaaS 等运维开发与相关团队管理工作。

GitHub Twitter Weibo

评论

评论使用 GitHub Discussions 承载;留言需要 GitHub 账号。