TPU 狂热:GPU 与 TPU 之争是否是现代版的 CISC 与 RISC 之争?

本文信息来源:thechipletter

诺贝尔奖得主、经济学家 Paul Krugman 讨论了 TPU 与 GPU,并与 Paul Kedrosky 进行了对话。并非有意批评 Krugman,计算机架构能获得如此多的关注是一件好事。

突然之间,所有人都在谈论——也在撰写——Google 的 TPU(Tensor Processing Units,张量处理单元)。TPU 被用于训练 Google 最新、市场领先的 Gemini 3 模型,再加上 Google 决定向第三方出售 TPU(据称其中包括宿敌 Meta),共同促成了一次从 NVIDIA 转向 Google 硬件的重大“氛围转变”。

这不仅仅是氛围上的变化,因为 Alphabet 的股价一直在强劲上涨:

关于最新一代 TPU(v7)的报道已经极为广泛,因此与其再增加一轮观点解读,我认为为读者整理一份关于 TPUv7 的最具信息量的文章和链接合集,会更有价值。

在此之前,我想先简要强调几个我不记得在其他地方被广泛讨论过的要点。

十二年的“一夜成功”

我们曾在以下内容中探讨过 Google 的 TPU 项目的起源:

Google 的第一代 Tensor Processing Unit:起源

·
2024年2月25日
Google's First Tensor Processing Unit: Origins

注:这是一篇分为两部分的文章。本部分提供背景,并讲述了首款 Google TPU 的开发历程。第二部分将更深入地探讨 TPU 的架构及其性能。

TPU 项目的起源可追溯至 2013 年——几乎比 ChatGPT 的推出早了近十年——当时人们首次清晰地意识到,Google 可能需要开始在大规模层面应用深度学习。

这一设计的精髓可以追溯得更早——回到 20 世纪 70 年代。在他们 1978 年发表的论文 《Systolic Arrays (for VLSI)》 中,卡内基梅隆大学的 H.T. Kung 和 Charles E. Leiserson 提出了他们所谓的“脉动系统”方案。

脉动系统是一种由处理器组成的网络,这些处理器以节律性的方式进行计算并在系统中传递数据……在脉动式计算机系统中,处理器的功能类似于心脏。每个处理器都会定期将数据泵入和泵出,每一次都执行一小段计算,从而在网络中保持数据的持续、规律流动。

这一方法在 20 世纪 70 年代和 80 年代并未得到广泛采用,但到了 2013 年,时机已经成熟:

到 2013 年,Kung 和 Lieberson 构想中最初的一些动机已经不复存在,尤其是针对 20 世纪 70 年代制造工艺技术局限性的考量已逐渐消退。然而,这种方法所具备的内在效率,尤其是在 2013 年尤为重要的低功耗优势,在矩阵乘法等任务中依然突出。因此,TPU 采用了脉动阵列(systolic arrays)。

我们在以下文章中更详细地讨论了首代 Google TPU 的架构:

Google 的首个 Tensor Processing Unit:Architecture

·
2024年3月24日
Google's First Tensor Processing Unit : Architecture

……我们半开玩笑地说,TPU v1“催生了成千上万颗芯片”。

事后看来,Google 的这一首代设计显得相当原始。它是通过 PCIe 接口连接到 CPU 的一款协处理器,只能进行整数运算,也仅适用于推理。但它达成了成本效益高、可大规模部署的设计目标,并在项目启动仅 15 个月后的 2015 年就已进入 Google 的数据中心。

TPUv1 的亮相引发了——正如 TPU 团队后来打趣所说——“千款芯片的诞生”:

Intel 展开了一轮针对机器学习领域特定架构(DSA)公司的收购狂潮,先后收购了 Nervana、Movidius、MobilEye 和 Habana。阿里巴巴、Amazon 等超大规模云服务商,以及 Tesla 等终端用户,也开始自研用于推理的 DSA 芯片。风投界同样迅速反应:2016 年至 2020 年间,每年向 100 多家机器学习 DSA 初创公司投入约 30 亿美元。一些初创公司押注于在通用计算领域未能成功的新理念,例如模拟计算、异步逻辑以及晶圆级硬件。(如今尚不清楚,这些初创公司在机器学习软件栈上的投入是否与其在硬件上的投入同样充分。)在 Google 内部,我们迄今已公布了 TPU v1 的四个后继版本。借用“特洛伊的海伦——‘引发千舰出航的那张面孔’”这一历史典故,我们半开玩笑地说,TPU v1“引发了千颗芯片的诞生”。

其中一些设计已被淘汰,但 Google 始终坚持其既定路线,在每一代产品中都进行了循序渐进但依然重大的改进:

TPU v2(2017 年)
  • 推理与训练
  • 高带宽内存(HBM)
  • 每颗芯片配备两个使用浮点数(bfloat16)的矩阵乘法单元
TPU v3(2018 年)
  • 在 TPU v2 的基础上,提供更高的内存带宽和更高的时钟频率
  • 每颗芯片配备四个矩阵乘法单元
TPU v4 与 TPU v4i(2021)
  • TPU v4 支持推理与训练(采用液冷),TPU v4i 仅用于推理(不采用液冷)
TPU v5p(性能型)与 TPU v5e(经济型)(2023)
  • “TPU v5p 以性能、灵活性和规模化为设计目标,可将大型 LLM 模型的训练速度提升至上一代 TPU v4 的 2.8 倍。此外,借助第二代 SparseCores,TPU v5p 在训练嵌入密集型模型时的速度比 TPU v4 快 1.9 倍 2。”
TPU v6e(2024 年)
  • “Trillium TPU 在单芯片峰值计算性能方面相比 TPU v5e 实现了令人瞩目的 4.7 倍提升。我们将高带宽内存(HBM)的容量和带宽翻倍,并将芯片间互连(ICI)带宽较 TPU v5e 提升了一倍。此外,Trillium 还配备了第三代 SparseCore,这是一种专用加速器,用于处理先进排序和推荐工作负载中常见的超大规模嵌入。”
TPU v7(2025 年)

有关 Google 最新 TPU 的更多阅读链接,请参见本文末尾。


或许可以将 Google 在 TPU 方面的发展历程,与 Apple 推动自研系统级芯片的计划进行比较:最初用于 iPhone,随后是 iPad,近年则是面向 Mac 的 M 系列。每年持续的渐进式改进,使“Apple Silicon”显然已成为 Apple 战略中的关键组成部分。

当然,Apple 凭借对完整软硬件技术栈的掌控拥有显著优势,这也引出了……

引领加速器阵营

我很喜欢这篇关于 Google TPU 的详细文章的开篇:

人们对 Google 的 Tensor Processing Unit 怀有一种近乎神话般的敬畏。就在当下,世界正目睹 NVIDIA 的引力将越来越多的公司拖入其轨道,而另一边,Google 则如帝国般屹立,独一无二。

我不确定 Google 的 TPU 项目是否独一无二,但在“千芯大战”中,它无疑格外引人注目。下面列出它相较于竞争对手(在很多情况下包括 NVIDIA)所具备的一些优势:

  • 极少数竞争者能够匹敌 Google 投入其 TPU 开发项目的雄厚财力;
  • 对整个技术栈的完全掌控——包括其服务中使用的软件和机器学习算法。这种掌控意味着,随着软件和算法的演进,反馈可以直接作用于硬件设计;
  • 数十年大规模建设和运营数据中心的经验;
  • 无需支持任何遗留系统(非 AI 应用)。

Google 在 2015 年率先推出 AI 加速器这一事实,展示了这些优势和反馈机制如何在实践中发挥作用。

而这一切发生在一家规模如此庞大、业务触角遍布多元领域的组织内部,似乎并未拖慢 TPU 系列的开发进程。TPU 架构的演进远不止单个 TPU 芯片性能的提升。到 v4 时,TPU 项目已从最初(v1)打造可附加到 Google 现有服务器上的外设,发展为能够独立运行的“云 AI 超级计算机”,可通过共享内存和高速互连将成千上万颗芯片组合在一起。

谷歌的两难处境

接下来,是 Google 在决定出售 TPU 时必然面临的两难抉择。毕竟,Google 自 2013 年起就一直在研发 TPU,那么为何要等到 2025 年才对外销售?

部分原因可能在于,几乎所有潜在客户都是 Google 核心业务的竞争对手。

而竞争对手即便不购买任何 TPU 也能从中受益。SemiAnalysis 或许带着几分调侃, 评论称 ,Google 决定出售 TPU 的举措已经为 OpenAI 节省了数十亿美元。

正如 Liberty 所指出 ,这种折扣是以股权投资的形式体现的,与现金并不完全相同,但仍然如此。

这引发了 Substack Notes 上的一些思考 ,讨论 Google 必然面临的两难处境:

我真希望能在谷歌决定对外出售 TPU 时,像一只“墙上的苍蝇”那样旁听整个过程。

一方面:

  • 通过在 TPU 销售中获取利润空间来增加价值,并实现规模经济。

另一方面:

  • 帮助你最大的竞争对手(在极端情况下甚至是生存层面的竞争者)OpenAI,在其用于与你竞争所需的芯片上获得大幅折扣。

这并非一个容易的决定。你会怎么做?

对此的反应几乎一边倒地支持“出售芯片”。James Wang 一贯深思熟虑的回应,可能最接近我自己的想法。

我怀疑关键因素在于 Google 仍然保有的控制程度。它可以逐年决定谁能获得 TPU,以及他们能获得多少 TPU。

如果 Google 真的变得邪恶(而且他们多年前就已经放弃了“不作恶”),他们可能会让客户对 TPU 产生依赖,然后通过退出市场来制造混乱。但别这么想了,Google 绝不会放弃一款重要产品,对吧?看看 Killed by Google,就能找到一些(或者说,非常多的)反例。

一个关键结论是,这些潜在的 TPU 客户都不应真正让自己依赖 Google,而这一点本身就会限制 TPU 的采用。

哪种架构会胜出?

最后一点是,关于 TPU 作为一种架构相对于 GPU 的优劣,几乎没有太多讨论。我认为这在很大程度上是因为许多评论背后存在一些隐含的假设:

  • GPU 更适合用于训练;
  • TPU 在推理方面更具成本效益,但你手头可能已经有不少较老的 GPU,它们用于推理依然完全够用。

Google 独家使用 TPU 来训练 Gemini 3,在一定程度上削弱了这一叙事的前半部分。

不过可以肯定的是,到目前为止,我们仍然不知道在 GPU 与 TPU 的竞争中谁会“胜出”。或者更准确地说,鉴于我并不认为会出现唯一的赢家,我们也还不知道两种设计各自将占据多大的市场份额。

我认为,决定结果的不会是各自架构本身的优劣;真正更为重要的,是双方阵营中具体竞争者的质量。

我确实认为,这两种路线之间很可能会出现一定程度的融合。多年来,Nvidia 的 GPU 已逐步降低对高精度浮点(FP64)计算的支持,并增加了矩阵乘法单元(于 2017 年随 Volta 架构引入),使其更加专注于 AI,在架构上也更接近 TPU。

无论如何,GPU 与 TPU 之间的竞争(而且不只是 Nvidia 与 Google 之间的较量)看起来很可能成为自 20 世纪 80 年代 CISC 与 RISC 之争以来,最引人关注、也最为激烈的一场架构竞赛。

TPU v7(Ironwood)

现在来看近期有关 TPU 的一些重点文章,首先是 Google 的公告 

接下来进入分析:首先是 SemiAnalysis(设有付费墙,但在付费墙前就有多达 9,500(!)字),其中涵盖了以下多个主题:

  • 重温我们最初的 TPU 深度解析,回顾从硅层到软件层的 TPU 硬件技术栈。
  • 介绍开放软件生态方面的积极进展,以及 Google 要让 TPU 生态成为挑战 CUDA 护城河的可行竞争者所缺失的关键一环:将其 XLA:TPU 编译器、运行时以及多 Pod 的“MegaScaler”代码开源。
  • 在付费内容中,我们将讨论这对 NVIDIA 护城河的影响,并将 Vera Rubin 与下一代 TPUv8AX/8X(又名 Sunfish/Zebrafish)进行比较
  • 还将涵盖对 NVIDIA 构成的长期威胁。

对“开放软件生态系统”发展动态的报道尤为引人入胜。

https://newsletter.semianalysis.com/p/tpuv7-google-takes-a-swing-at-the?utm_source=substack&utm_campaign=post_embed&utm_medium=web

接下来:全球科技研究:

今天,我想介绍近期备受投资者关注的 Google Ironwood TPU 机架及其光学电路交换(OCS)系统。

https://globaltechresearch.substack.com/p/the-ironwood-an-introduction-to-google?utm_source=substack&utm_campaign=post_embed&utm_medium=web&has_completed_unsubscribed_unlock=true

最后分享一篇来自 Phabian(免费)的有趣文章,讨论 TPUv7 的供应链:

Google Inc 的 Ironwood(TPU v7)是目前量产中透明度最低但却最重要的 AI 加速器之一。其完整物料清单尚未公开,但如果将 Google 的披露信息、OCP(Open Compute Project)的标准制定工作,以及关于 CoWoS、HBM、光学组件和 OSAT 的行业供应链研究拼接在一起,就能勾勒出一幅相当清晰的图景,显示当 Google 出货又一个 Ironwood pod 时,究竟是谁在获得收入。

本文将那份冗长的供应商清单转化为一条叙事脉络:技术栈如何协同运作,以及在 Ironwood 出货量增长中,运营杠杆效应真正集中的位置。

了解 RecodeX 的更多信息

立即订阅以继续阅读并访问完整档案。

继续阅读