CPU、GPU 和 TPU 到底有什么区别?零基础也能看懂的芯片指南

CPU、GPU 和 TPU 到底有什么区别?零基础也能看懂的芯片指南

一句话总结:CPU 是什么都会的“全能主厨”,GPU 是能够同时制作上千道菜的“大型厨房团队”,TPU 则是只专注于一道菜、但做得又快又省电的“自动化中央厨房”。

打开新闻,你会看到 NVIDIA 市值屡创新高、Google 发布新一代 TPU、AI 数据中心在全球不断扩建。这些话题的核心,其实都围绕着三类芯片:CPU、GPU 和 TPU。

即使没有计算机科学背景,你也能读懂这篇文章。我们会从生活化的比喻开始,逐步深入芯片架构背后的设计思路,最后告诉你:不同场景应该选择哪种芯片。

先从一个比喻开始:三种厨房

假设你准备开一家餐厅,有三种厨房方案:

  1. 全能主厨(CPU):一位样样精通的主厨,煎、炒、烹、炸都会,还能接电话、记账和处理顾客投诉。不过,他一次只能处理一两件事,客人一多就容易忙不过来。
  2. 厨房团队(GPU):几千名只会切菜的学徒。单个学徒的手艺远不如主厨,但如果任务是“把一万颗土豆切成丁”,几千人同时动手,速度会远超任何一位主厨。
  3. 自动化中央厨房(TPU):一条专门生产“同一道菜”的自动化生产线。它不会制作其他菜品,甚至连切菜都不会,但生产这道菜时,前两种方案都难以匹敌它的速度和能效。

全能主厨(CPU)、厨房团队(GPU)和自动化中央厨房(TPU)

全能主厨(CPU)、厨房团队(GPU)和自动化中央厨房(TPU)

AI 计算的核心恰好就像这道“相同的菜”:大量重复的矩阵乘法。正是这种工作负载,推动三类芯片形成了不同的分工。

第一层:三种芯片分别是什么?

CPU:计算机的大脑

CPU(Central Processing Unit,中央处理器)诞生于 20 世纪 50 年代末,是计算机的“总指挥”。手机、笔记本电脑和服务器里都有它。CPU 负责运行操作系统、打开浏览器、计算电子表格,并协调所有硬件资源。几乎任何软件都可以在 CPU 上运行。

CPU 的主要设计特点包括:

  • 核心数量少,但单核能力强:一般 CPU 只有几颗到几十颗核心,但每颗核心都很聪明,擅长复杂逻辑和判断。
  • 一步一步完成任务:CPU 擅长“顺序处理”,按照次序完成一项任务的各个步骤,尤其适合前后相互依赖的任务。
  • 最大的优势是灵活性:从文档处理、银行交易到火箭发动机控制,CPU 什么都能计算。

这种灵活性也有代价。CPU 每进行一次计算,都要从内存中读取数值,计算完成后再把结果存回去。内存访问速度远低于计算速度,因此可能成为性能上限。这就是著名的冯·诺依曼瓶颈(Von Neumann bottleneck)

GPU:从绘制游戏画面到训练 AI

GPU(Graphics Processing Unit,图形处理器)在 20 世纪 90 年代末出现,最初用于电子游戏。屏幕上有数百万个像素,而每个像素的颜色计算方式都差不多。与其让 CPU 逐个计算,不如让“几千颗小核心”同时工作。

  • 核心数量以千计:一颗现代 GPU 拥有数千个 ALU(算术逻辑单元),可以同时完成上千次乘法和加法。
  • SIMD 并行架构:“同一条指令,同时应用到大量数据”,正是几千名学徒一起切土豆的逻辑。
  • 意外发现的 AI 天赋:研究人员后来发现,神经网络计算中的大量矩阵运算,与图形处理使用的数学形式几乎相同。在典型的深度学习训练任务中,GPU 的吞吐量可以达到 CPU 的大约一个数量级。

如今,NVIDIA GPU 甚至内置了专为 AI 设计的 Tensor Core。这类硬件单元专门加速矩阵乘加运算,并支持混合精度计算,是现代 GPU 获得 AI 性能的主要来源。换句话说,GPU 本身也在朝着更加专用的方向发展。

TPU:为 AI 而生的专用芯片

TPU(Tensor Processing Unit,张量处理单元)是 Google 自行设计的 ASIC(Application-Specific Integrated Circuit,专用集成电路),也就是为了单一目的打造的芯片。

TPU 的诞生过程很有意思。2013 年前后,随着语音识别质量大幅提升,Google 发现:如果每位用户每天只对 Google“说话”三分钟,数据中心的数量就需要增加一倍。仅靠通用芯片很难支撑这种规模,因此 Google 决定打造专用芯片。第一代 TPU 于 2015 年投入使用,随后支撑了搜索、翻译和相册等服务。

TPU 的特点非常极端:

  • 不会做其他事情:它不能运行文档软件,也不能处理银行交易,只专注于一件事:超大规模的矩阵运算。
  • 但把这件事做到了极致:与同期 CPU 和 GPU 相比,第一代 TPU 的推理性能高出 15~30 倍,每瓦性能(能源效率)则高出 30~80 倍。
  • 买不到,只能租用:TPU 不对外销售,只存在于 Google 数据中心,用户需要通过 Google Cloud 租用。

第二层:架构上到底有什么区别?

理解这一部分,你就能比大多数科技新闻读者更准确地看懂芯片报道。

在相同的芯片面积中,CPU 使用少量强大的核心,GPU 塞入数千颗小核心,而 TPU 将数万个乘加器直接连接成阵列

在相同的芯片面积中,CPU 使用少量强大的核心,GPU 塞入数千颗小核心,而 TPU 将数万个乘加器直接连接成阵列

为什么 AI 就是“矩阵乘法”?

神经网络进行预测时,每个神经元所做的事情就是:把输入乘以权重(代表信号强度),然后将结果全部相加。当数百万个神经元同时完成这项工作时,整体就相当于一次超大规模的矩阵乘法。Google 曾统计其生产环境中的神经网络,单个模型的权重数量从 500 万到 1 亿个不等。每次预测都要让输入数据与这些权重反复相乘、相加。

因此,芯片的 AI 性能几乎取决于一个问题:一个时钟周期内,能够完成多少次“乘加运算”?

芯片 每周期运算量 运算单位
CPU 几次 标量(scalar):一次计算一个数字
支持 AVX 等向量扩展的 CPU 数十次 向量(vector):一次计算一组数字
GPU 数万次 向量:数千颗核心同时计算
TPU 数十万次,最高 128K 张量(tensor):一次计算一个完整的矩阵块

一个时钟周期内,三类芯片能够完成的乘加运算量级

一个时钟周期内,三类芯片能够完成的乘加运算量级

TPU 的核心:脉动阵列(Systolic Array)

TPU 能够在一个周期内完成数十万次运算,依靠的是一种名为脉动阵列的特殊架构:

  • CPU 和 GPU 每进行一次计算,都需要访问寄存器或共享内存来读取操作数、保存中间结果,而这些访问都会消耗电力和时间。
  • TPU 则把成千上万个“乘加器”直接物理连接成一个巨大的矩阵。数据像水流一样经过芯片,也像心脏泵送血液——“systolic”一词正是由此而来。每个单元完成计算后,会把结果直接传给相邻单元,整个矩阵乘法过程中完全不需要访问内存
  • 第一代 TPU 的矩阵乘法单元(MXU)包含 256 × 256 = 65,536 个乘加器;现代 TPU 的每个 MXU 每周期可以完成 16K 次乘加运算。

CPU 和 GPU 每次计算都要往返内存,而 TPU 让数据直接流过乘加器阵列

CPU 和 GPU 每次计算都要往返内存,而 TPU 让数据直接流过乘加器阵列

这是一项很划算的交换:牺牲灵活性——只能执行固定模式的乘法和加法——换取极高的计算密度和能源效率。导线只连接相邻单元,既短又省电;由于不需要复杂的控制逻辑,芯片面积几乎都可以用来进行计算。

另一件武器:降低精度

AI 预测其实不需要非常精确的小数。TPU 大量使用量化(quantization)和低精度格式,例如 8 位整数和 bfloat16。在相同的芯片面积中,能够容纳的 8 位乘法器数量比 32 位浮点乘法器多 25 倍以上,内存用量也会大幅下降。GPU 的 Tensor Core 同样采用了混合精度策略,这也是整个 AI 芯片行业的共同方向。

三种芯片的内存设计思路

方面 CPU GPU TPU
内存管理 多级缓存(L1/L2/L3),由硬件自动管理 每个 SM 配有 L1/共享内存,整颗芯片共享 L2 缓存 专用缓冲区,由软件明确管理
设计目标 让“任何程序”都能较好地运行 让“并行程序”运行得很快 让“矩阵乘法”达到极限
通用性 最高 中等,仍然属于通用处理器 最低,专门用于神经网络

关键在于:GPU 虽然并行程度很高,但它仍然是通用处理器,必须支持各种各样的应用,所以每次计算仍然要付出内存访问的成本。TPU 彻底放弃通用性,才换来了这种级别的效率。

第三层:真实的性能和能源效率数据

  • 第一代 TPU(2015 年):推理性能是同期 CPU 和 GPU 的 15~30 倍;每瓦性能是 CPU 的 83 倍、GPU 的 29 倍。
  • 第六代 TPU Trillium(2024 年):单芯片峰值性能是上一代 v5e 的 4.7 倍,能源效率提高 67%。
  • 规模化:TPU 以“Pod”为单位部署,数千颗芯片通过高速互连网络直接连接,专门用于超大模型的分布式训练。

需要注意的是,这并不代表“TPU 在所有方面都胜过 GPU”。GPU 拥有更加成熟的软件生态,包括 CUDA 和 PyTorch 原生支持;用户可以自由购买和部署,应用范围也广得多。这正是 NVIDIA GPU 仍然是 AI 市场主流的原因。TPU 的优势在 Google Cloud 生态,以及超大规模、高度优化的工作负载中最为明显。

应该选择哪一种?场景对照表

你的场景 建议 原因
日常办公、上网和编程 CPU 任务类型多而且需要顺序执行,通用性最重要
游戏、视频剪辑和 3D 建模 CPU + GPU 图形渲染正是 GPU 的本行
学习 AI、训练小模型 GPU 生态最成熟,学习资源和教程最多
大规模训练或推理,以 PyTorch 为主 GPU 集群 CUDA 生态和框架支持最完整
在 Google Cloud 使用 JAX/TensorFlow 进行超大规模训练或推理 TPU 计算密度和能源效率极高,Pod 架构天然为此设计
手机、笔记本电脑上的实时 AI 功能 NPU 详见下一节

延伸:这个家族还有其他成员

  • NPU(Neural Processing Unit,神经网络处理单元):如果把 TPU 看作数据中心里的 AI 专用芯片,那么 NPU 就是手机和笔记本电脑中的迷你版本。Apple Neural Engine、Qualcomm Hexagon,以及 Windows Copilot+ PC 中的 NPU 都属于这一类,负责在设备上以低功耗运行语音识别、照片处理等 AI 任务。
  • 更多 ASIC:TPU 的成功启发了整个行业。Amazon Trainium 和 Inferentia、Tesla Dojo,以及许多初创公司的 AI 芯片,本质上都在走同一条路:为特定运算牺牲通用性,换取更高效率。

结语:没有最强的芯片,只有最合适的分工

回到餐厅的比喻。一家成功的餐厅需要主厨(CPU)统筹全局、学徒团队(GPU)处理大量备料,也需要中央厨房(TPU 或 NPU)批量生产招牌菜。现代 AI 数据中心也是如此:CPU 负责调度和逻辑,GPU 与 TPU 则承担繁重的计算工作,各司其职。

理解“工作负载与架构的匹配”,就是理解现代计算的第一课:用 CPU 运行神经网络,就像开跑车搬家——虽然能动,但完全用错了工具。

📚 想继续深入?欢迎阅读进阶篇:TPU 的 4x4x4 到底在乘什么?一篇看懂 TPU Slice 与 GPU 设计思路,进一步了解 TPU 拓扑网络与 GPU 设计思路的区别。

Eason Cao
Eason Cao Eason is an engineer working at FANNG and living in Europe. He was accredited as AWS Professional Solution Architect, AWS Professional DevOps Engineer and CNCF Certified Kubernetes Administrator. He started his Kubernetes journey in 2017 and enjoys solving real-world business problems.
comments powered by Disqus