AI 基础架构 · 第 01 条 · 硬件
GPU、TPU 与加速器:为什么不是 CPU
CPU 和 GPU 的区别不是「快和慢」,而是「为哪种工作设计的」。搞清这一点,后面带宽、集群、成本的问题才有落脚点。
两种完全不同的设计取向
| CPU | GPU / 加速器 | |
|---|---|---|
| 优化目标 | 单线程延迟(做一件事有多快) | 吞吐(单位时间能做多少事) |
| 核心数量 | 几十个,每个都很强 | 上万个,每个都很简单 |
| 擅长 | 分支判断、逻辑控制、缓存命中 | 大规模并行的同类运算 |
| 代价 | 核心强但数量少 | 核心弱但数量多,需要足够并行才有优势 |
CPU 里很大一部分晶体管用在分支预测和大缓存上——这些是为了让「下一步该做什么」这个判断尽可能快。而 AI 的计算里几乎没有这种判断:矩阵乘法是成千上万次同样的乘加,不需要预测什么。
把这部分电路拿掉,换成更多的计算单元,就得到了 GPU 的思路。
为什么 AI 恰好吃这一套
神经网络的绝大部分运算可以归结为矩阵乘:输入矩阵乘权重矩阵。这种运算的特点是每个输出元素的计算方式完全相同,只是数据不同——天然的并行。
反过来,这也意味着如果模型太小、批太小,GPU 就跑不满。并行度不够,上万个核心有大部分在闲置。这就是为什么小批量推理时 GPU 利用率可能很低。
专用化的收益与代价
从 GPU 到 TPU 再到各种加速器,是进一步专用化的过程:为特定类型的运算定制电路,效率更高、功耗更低。
专用化带来效率,也带来锁定。硬件越专门,软件生态越难迁移——为一个框架写的代码,换到另一个硬件上往往要重写。所以这类选择不只是技术决策,也是生态和供应链决策。
一个常被忽略的点
在大模型训练里,算力往往不是最紧的瓶颈。真正卡住的是数据搬运——尤其是显存带宽和卡间通信。这就是为什么「峰值算力」这个指标常常不能反映实际性能。
下一代的问题是:算力增长了,但带宽和网络有没有同步增长?如果没有,多出来的算力就用不上。
要点回顾
- CPU 优化单线程延迟,GPU 优化吞吐;矩阵乘天然并行,正好匹配 GPU 的设计。
- GPU 的核心弱但数量多,并行度不够时利用率会很低。
- 从 GPU 到 TPU 是进一步专用化:效率更高,但软件生态迁移成本也更高。
- 大模型训练里算力往往不是最紧的瓶颈,数据搬运才是。
- 看硬件不能只看峰值算力,要同时看带宽和网络是否匹配。