跳轉到

Google TPU 智囊團:為大模型打造的脈動陣列#

從史丹佛走廊到 Google 大門#

諾曼·賈魯皮(Norman Jouppi)是計算機體系結構界無人不知的名字。1980 年代,他在史丹佛與約翰·軒尼詩(John Hennessy)共事,是 MIPS 計畫的核心成員之一;後來他又與 David Patterson、David Brooks 合寫了《計算機體系結構:量化研究方法》(Computer Architecture: A Quantitative Approach)——這本書二十年來是全球體系結構課程的聖經。他的人生軌跡是學院到產業的標準路線:史丹佛博士、DEC 西部研究實驗室、再到史丹佛任教。

2013 年,一個改變他職業生涯的事件發生了:Google 的工程師們在運維大規模語音辨識模型時發現,用傳統 CPU 部署的神經網路推理,成本正在以不可控的速度膨脹。當時 Google 的安卓語音辨識系統一旦全面升級到深度神經網路(DNN),用電量將翻倍,相當於多蓋好幾座電廠。工程師們做了一個簡單的實驗:僅把矩陣乘法這一種運算硬體化,效能就能提升兩個數量級。

這個數字說服了賈魯皮。同年,他離開史丹佛加入了 Google。他不是一個人孤軍奮戰——這是一支由體系結構學者、編譯器專家與分散式系統工程師組成的智囊團:他、Andrew Young、Daniel Agarwal……背後還有 Jeff Dean 主導的力量。

Jeff Dean:演算法帝國的執行人#

Jeff Dean 是 Google 內部最富傳奇色彩的工程師之一。史丹佛博士,在 Western Research Lab(與 DEC)待過,2000 年代在 Google 主導設計了 BigTable、MapReduce——後來衍生出了 Hadoop 和整個雲端的大數據產業。他的特點是:「一個人在一星期內能寫出足以支撐整個公司核心產品的程式碼」。

Jeff Dean 對 TPU 專案的定位極其清晰:Google 的商業模式依賴大規模、低延遲的線上服務——搜尋、翻譯、語音、相簿。當這些服務全部切換到深度學習,Google 需要一種「為自己量身訂做」的處理器。外購 GPU 可行,但:其一,GPU 是通用圖形引擎,冗餘功能太多、功耗和成本不划算;其二,NVIDIA 的定價與供應節奏不受 Google 控制。孵化於雲帝國的 Google,要做的是算力自主。

TPU v1:一次押注脈動陣列的勝利#

2016 年 5 月,Google 在 I/O 大會上宣布 TPU v1 已在公司內部服務上運行了一年。它的核心設計選擇令人吃驚地簡潔:用一個 256×256 的矩陣乘法單元(MXU),以 INT8 量化精度做運算。這個思想的祖先,是 1978 年孔祥重(H. T. Kung)與 Charles Leiserson 在 CMU 發表的脈動陣列(Systolic Array)經典論文。

脈動陣列的靈感來自心臟的收縮—舒張循環:資料像血液一樣,在相鄰的處理單元(PE)之間有序地流動。每個 PE 從上方接收一個數,從左方接收一個數,完成一次乘加,然後把結果往右和往下推一格。整個矩陣的資料像波浪一樣一層層推進,而運算不必來回打開主記憶體——一切在陣列內部完成:

這個設計的效能密碼在於:矩陣乘法不需要複雜的資料快取策略,因為資料以最規律的方式流動;INT8 量化使每個 MAC 用極少的閘電路就完成,讓 Google 在同樣面積上塞進 256 個乘法器。TPU v1 的論文(ISCA 2017)端出了讓全世界連眼神都變了的數字:在六種代表 Google 實際商業流量的神經網路上,TPU 的每瓦性能是同代 CPU 的 30 到 80 倍、GPU 的 10 到 30 倍。

這篇論文在會議現場引起了騷動。原因不只是數字,而是方法論:賈魯皮團隊沒有做「學術 toy benchmark」,而是把 Google 真實的生產工作負載拿出來驗證。這正是 Patterson-Hennessy 學派的方法論傳承——讓數據說話,且數據必須是真實的數據。

從推理到訓練:TPU v2、v3 與 Pod#

TPU v1 只做推理(inference),而訓練需要的是反向傳播、高精度(32 位元浮點)與大規模並行。團隊在 v2 上做出三項關鍵進化:

  • BMX 主機介面改成大規模平面網路:每顆晶片接入高速互連網狀(2D toroid),使數千顆晶片能像一台超級電腦一樣同步運作。
  • FP16/FP32 與 bfloat16:Google 自行定義了 bfloat16 浮點格式(指數位寬與 FP32 相同、尾數位窄),成為深度學習界的準標準。
  • 液冷系統:v3 直接改用水冷,把功率密度推向極限。

v2 起,TPU 開始做訓練。2017 年,Google 將數千顆晶片組成「TPU Pod」——一個邏輯上的超級電腦。隨後 v3、v4(2021)、v5 逐代更迭。Google 在 2018 年推出」TPU Pod"這個概念時,同時將 TPU 部署上 Google Cloud——這才是策略的震憾彈:外部開發者也可以租用 Google 的專屬 AI 晶片,租雲端 API 是 Intel 和 NVIDIA 幾十年收入的命脈,Google 從用戶一躍成為競品供應商。

PaLM(2022 年,5400 億參數語言模型)與 Gemini 系列都是在 TPU v4 與 v5 Pod 上訓練出來的。PaLM 論文公開揭露了訓練成本:用了數千顆 TPU,訓練數星期。這就是內部算力的意義——Google 不必每一個模型都去黑市採購晶片,內部的算力池可以集中調度。

第二條 AI 算力供給線的意義#

TPU 的歷史意義在於它打破了 AI 算力的單極格局。2010 年代,NVIDIA 使用 CUDA 生態與雲端供貨節奏,掌握了 AI 訓練晶片的命脈。谷歌做 TPU 的原始動機很務實——省錢、省電、不受人擺佈;但在客觀效果上,它提供了除了 NVIDIA GPU 之外的另條發展路徑。Meta 等一流廠商也開始租用 Google Cloud 的 TPU 訓練自家模型。

賈魯皮在一次訪問中說:我們不是要「打倒」GPU,我是想「為某類工作負載選一個最合適的架構」。他說得謙遜,但結局自然是競合:NVIDIA 積極開 ANS 端對 end 時系統的優勢(NVLink、CUDA-X、DGX),而 Google 以「雲+TPU+應用」的封閉生態相抗——演算法、硬體、雲一條龍,這是 IBM 1960 年代主機帝國的翻版,也是今天 AI 時代的新型帝國模式。

黃仁勳的帝國與 Google 的 TPU 智囊團之間,二百年來第一次有了第三種力量。賈魯皮自己也看到了這個歷史弧線,他在 2018 年受邀參加 Patterson 與 Hennessy 的圖靈獎演講時,恰好聽到他們談論「新黃金時代」:領域專用處理器(DSA)正在推動體系結構新革命。那場演講的結尾,Patterson 說:未來屬於「量化問題、量化方法、量化驗證」——他的學生 Norman Jouppi 早已在 Google,用一個 256×256 的矩陣,把這一切變成了現實。