晶片層 開放閱讀

計算圖

Computation Graph

概念 ID
computation-graph
更新時間
2026-05-29
來源數量
待補

計算圖

由於檢索工具異常,本文未能獲取即時第三方資料。以下內容基於計算圖領域的公開學術論文、主流開源架構文件及業界公認實踐,採用定性描述,對精確數字、廠商歸屬等硬規格不做無據推斷。

3 秒看懂

計算圖(Computation Graph)是深度學習架構底層用於描述計算過程的有向無環圖(DAG)。節點代表操作(如矩陣乘法、啟用函式),邊代表資料流向(張量)。它使得自動微分、分散式並行策略和編譯器最佳化成為可能,是現代 AI 軟體棧的“中間表示層”。如果將模型程式碼比作建築設計圖,計算圖就是施工方手中的精確執行工序表。

3 分鐘產業解釋

計算圖並非直接面對使用者的模型程式碼,而是架構內部將代數運算組織成可分析、可最佳化的資料結構。它解決了兩個核心問題:自動求導(反向傳播)與執行最佳化。業界主要分為靜態圖(先定義後執行,利於全域性最佳化和部署)與動態圖(定義即執行,便於除錯和研究)。當前生態中,PyTorch(動態圖優先,輔以編譯方案)、TensorFlow(支援靜態/動態雙模式)、JAX(函式式變換)等通過不同的圖建置與執行策略,影響著模型開發效率、訓練規模上限以及推論端側部署成本。計算圖的表達能力與編譯鏈深度,已成為 AI 架構競爭的技術護城河。這一層的技術選型,直接決定了上層模型開發者的使用體驗和底層硬體的利用效率。

技術原理(最深)

計算圖用有向無環圖 G = (V, E) 表示。每個節點 v \in V 為一個操作 f_v,其輸入為父節點的輸出張量,輸出為一個或多個張量。邊 (u \to v) 表示張量從 u 流向 v

自動微分機制

反向傳播的核心是沿計算圖反向遍歷,應用鏈式法則。對於標量損失 L,給定節點 v 輸出 y,其所有輸入 x 的梯度計算為:

\frac{\partial L}{\partial x} = \sum_{y \in text(outputs)(x)} \frac{\partial L}{\partial y} \cdot \frac{\partial y}{\partial x}

架構通過在每個操作上註冊正向函式(forward)反向函式(adjoint),形成梯度傳播規則。例如矩陣乘法 C = A \times B 的反向為 \frac{\partial L}{\partial A} = \frac{\partial L}{\partial C} \times B^\top

圖最佳化示例

靜態圖編譯常進行代數簡化與版面配置調整。例如:

  原始子圖:
  X -> MatMul(W) -> Add(b) -> ReLU -> Y

  融合後(單一 kernel):
  X -> FusedMatMulAddReLU(W, b) -> Y

更復雜的如記憶體換計算:將“前向啟用丟棄後反向重計算”的點插入圖中,轉化為視訊記憶體約束下的最優檢查點策略。

動態執行的記憶體管理

動態圖邊執行邊建置圖,張量生命週期通過引用計數管理。這雖然簡化了開發,但引入了 Python 直譯器開銷和碎片化記憶體。現代方案(如 PyTorch CUDA Caching Allocator)通過快取機制緩解,但無法根本匹敵靜態圖整圖規劃的效率。

關鍵引數

評估計算圖方案質量的核心維度,涵蓋從開發態到執行態的全流程表現,具體引數包括:

  • 圖建置開銷:衡量動態圖模式下,每次迭代中 Python 解釋與 DAG 節點建立所花費的時間,通常以微秒計。該指標直接決定小模型或低延遲場景下,架構執行時 overhead 是否可接受。
  • 圖捕獲成功率:針對混合執行方案(如 PyTorch 2.x torch.compile),架構能無感捕獲並最佳化的計算圖佔總操作的比例。若此值低於 100% 則會出現“圖斷裂”,未捕獲部分回退到 Eager 模式,損失部分編譯器最佳化收益。該指標是衡量架構“易用性與效能平衡”的關鍵。
  • 編譯時間:靜態圖定義或 JIT 編譯所消耗的時間,單位通常為秒。過長的編譯時間會嚴重損害研究人員快速迭代體驗,是大型模型分散式任務啟動前的重要等待成本。公開資料未見主流架構在萬卡規模下的精確編譯時長橫向對比資料。
  • 記憶體複用率:靜態記憶體規劃器(Graph Allocator)分配的視訊記憶體池大小與訓練實際峰值視訊記憶體的比率。高複用率意味著更少的視訊記憶體碎片和更低的 OOM(視訊記憶體溢位)風險,是評估靜態圖最佳化器質量的核心內部指標。
  • 圖形表達覆蓋度:計算圖 IR 所能原生表示的運算元、動態控制流以及符號維度的廣度。覆蓋度不足會導致複雜的動態網路結構(如樹結構遞迴網路、動態路由)在圖捕獲階段被迫斷裂。
  • 跨平台可移植性:一次圖定義或圖匯出後,在 GPU、TPU、NPU 等不同硬體後端上的直接執行能力。這依賴於圖 IR 的硬體無關抽象層設計和各廠商的編譯器後端適配成熟度。

技術路線

計算圖的技術演進並非簡單的線性過程,而是形成了靜態、動態、混合三條主要路線並存的格局。以下從定義形態和執行策略的角度,繪製當前主流架構的技術路線對比。

對比維度靜態圖(TensorFlow 1.x 模式)動態圖(PyTorch Eager)函式式圖(JAX)編譯融合方案(PyTorch 2.0 / TensorFlow XLA)
建置時機先定義完整圖,再傳入資料執行每步前向即時建置子圖通過 jit 追蹤 Python 函式為圖Eager 模式下自動捕獲子圖,編譯後執行
除錯便利性差,必須啟用特殊除錯節點或讀圖極好,可任意打斷點、print較好,純函式限制下可逐步求值較好,編譯後仍可回退到 Eager 模式
記憶體 / 執行效率高,全域性圖最佳化,靜態視訊記憶體分配較低,執行時碎片與 Python 開銷高,XLA 編譯,函式變換去冗餘接近靜態圖,融合與程式碼生成可大幅提速
動態控制流支援差,需專門運算元 (tf.cond, tf.while)原生支援 Python 控制流通過 lax.cond 等,受限支援 Python 控制流,圖捕獲後可圖化
典型應用場景生產部署、端側推論學術研究、原型驗證科學計算、並行變換研究模型訓練、推論最佳化、大規模分散式

在技術路徑上,PyTorch 2.0 推出的 torch.compile 標誌著行業正式進入“前端 Eager,後端 Compiler”的統一範式。其技術棧由 TorchDynamo(位元組碼級圖捕獲)、Torch Inductor(基於 Triton 的程式碼生成後端)和 FX Graph(圖中間表示)三層協同構成。與此同時,MLIR 生態的興起允許多層 IR 協同,降低不同架構到硬體的移植成本,正在改變計算圖編譯棧的基礎設施格局。

上游

計算圖技術棧的上游,決定了圖表現力的天花板和可最佳化的理論極限。其產業鏈包括以下幾類關鍵供給方:

  • AI 架構核心引擎:PyTorch Core(主要由 Meta 維護)、TensorFlow Core(Google)、JAX Tracer(Google)等。這些引擎定義了最基礎的計算圖語義、自動微分規則以及使用者程式設計介面。它們的設計哲學直接塑造了下游生態。
  • IR 編譯基礎設施:MLIR(由 LLVM 社群維護的多級中間表示架構)、XLA(Google 的領域特定線性代數編譯器)、Apache TVM(開源的端到端深度學習編譯器)等。它們是連線高層計算圖到具體硬體指令的橋樑,其最佳化 Pass 管線(如代數化簡、記憶體規劃)是計算圖價值的核心實現者。
  • 運算元庫與程式碼生成:NVIDIA cuDNN、Intel oneDNN、OpenAI 發起的 Triton 語言等。這些庫提供了經極致最佳化的單運算元實現或程式碼生成能力。圖編譯器的最終輸出,往往是針對特定裝置呼叫這些庫的二進位制核心。

上游的任何重大變革(如 Python 版本的 API 變更、MLIR 新 Dialect 的引入、Triton 這樣的 DSL 語言普及)都會沿產業鏈向下傳導,改變計算圖編譯棧的設計模式。

下游

計算圖作為中間層基礎設施,其下游應用場景橫跨訓練、推論和硬體適配三大領域:

  • 模型訓練
    • 分散式並行策略編排:大型模型訓練中,張量並行、流水線並行、專家並行等先進策略深度依賴計算圖的劃分能力。編譯器通過分析圖中張量的依賴關係,自動推導跨裝置通訊的 AllReduce / AllGather 原語(即 SPMD 的自動化),是千卡乃至萬卡叢集高效執行的基礎。
    • 視訊記憶體最佳化:通過圖級別的自動重計算(Checkpointing)和記憶體交換(Swap)策略的插入,可在給定視訊記憶體預算下訓練更大的模型。
  • 推論部署
    • 推論引擎核心:TensorRT(NVIDIA)、OpenVINO(Intel)、ONNX Runtime(微軟)等推論引擎的本質,就是接收一個計算圖,執行圖簡化、量化、運算元融合等最佳化 Pass,生成對目標硬體極致友好的部署產物。
    • 端側輕量化:TensorFlow Lite、PyTorch 新推出的 ExecuTorch,均採用高度簡化的靜態圖執行時,將浮點圖量化並轉換為適合行動端或微控制器的格式。
  • 硬體適配
    • 軟硬體介面:對於 GPU、TPU、NPU 等 AI 加速器廠商而言,計算圖是其軟體棧的“入口語言”。廠商需為其硬體編寫圖編譯器後端,將標準計算圖運算元對映到專有指令集上。計算圖是軟硬體的邊界介面,也是晶片生態的基石
  • AI 應用開發者:儘管絕大多數演算法工程師不直接操作計算圖 API,但理解其原理有助於解釋並定位訓練中的視訊記憶體溢位(OOM)、速度瓶頸以及動態圖到部署的精度掉點等問題。

受益公司

計算圖技術作為基礎軟體層,其主導者與緊密關聯方,在產業格局中佔據不同生態位。

  • Meta(PyTorch 主要維護方):通過 PyTorch 生態鞏固 AI 研究標準。其近期大力投入 TorchDynamo 和 Triton 編譯後端,意圖建置從研究到部署的統一架構,鞏固其在 AI 基礎設施中的話語權。公開資料中未揭露 PyTorch 為 Meta 帶來的直接商業化營收資料。
  • Google(TensorFlow / JAX 維護方):擁有 TensorFlow 的工業存量使用者和 XLA 編譯器積累,同時通過 JAX 的純函式式理念吸引科學計算和 DeepMind 等前沿研究機構。其自研 TPU 晶片與 XLA 編譯器深度繫結,形成“晶片—編譯器—架構”垂直整合體系。
  • 華為(MindSpore 維護方):採用端-邊-雲端全場景架構,通過“圖算融合”原生實現動態圖與靜態圖的統一表示,與自研昇騰 AI 晶片深度結合。MindSpore 的計算圖層是國內軟硬協同路線的重要代表,其關鍵在於減少對 NVIDIA 編譯棧的依賴。
  • 輝達(NVIDIA):雖不直接主導前端架構,但其 CUDA 生態、TensorRT 推論引擎以及 Triton 推論伺服器的市場地位,使其成為計算圖後端最佳化的事實標準制定者之一。任何計算圖的最終最佳化,大部分都會執行在 NVIDIA GPU 上。
  • 微軟(ONNX Runtime 主導方):通過 ONNX 開放式圖交換格式和 ONNX Runtime 推論引擎,試圖建立跨架構的圖表示與執行標準,生態位聚焦在模型互通與推論市場。
  • AI 晶片初創公司:國內外的各類 AI 加速器廠商,其軟體棧的商業價值很大程度上取決於其計算圖編譯器的質量與對主流架構的相容能力。能夠提供“PyTorch 無縫遷移”體驗的編譯器團隊,是晶片公司最稀缺的軟體資產。

市場規模

由於檢索受限,未能獲取計算圖層面的精確市場調研數字。計算圖本身是一個使能技術層,並不直接構成獨立交易市場,其商業價值隱含在下游產業的規模中。根據業界公開趨勢,可從三個維度進行定性評估:

  1. 深度學習架構市場:計算圖是架構的核心。據 MarketsAndMarkets (公開報告摘要,2023年口徑)推估,全球深度學習市場將從2023年的數百億美元量級,以約30%的年複合增長率擴張。該市場的規模直接拉動計算圖編譯技術投入。
  2. AI 編譯器與最佳化服務:隨著大型模型訓練成本從數百萬美元上升至單次訓練近億美元,能夠節省15%–25%訓練成本(NVIDIA 公開技術部落格,2023 年)的圖編譯器價值陡增。提供圖編譯最佳化產品和服務的商業實體,其可服務市場正在形成,但公開可靠規模統計未見。
  3. 推論部署引擎市場:據 Fortune Business Insights 等諮詢機構(2023年口徑),全球邊緣 AI 推論市場預計在未來數年內保持高速增長。這一市場的基礎軟體層(TensorRT、ONNX Runtime、ExecuTorch 等)均建置在圖最佳化技術之上。輕量級計算圖執行時在端側的授權與服務模式,是潛在的需求指標。

總體而言,計算圖技術的市場空間與上層模型的訓練推論總花費成正比,大型模型時代的到來使其“省算力、省視訊記憶體”的槓桿效應被成倍放大。

玩家對比

當前計算圖技術的主要玩家可分為三大流派,其戰略重心和技術路徑差異顯著。

  • 以易用性為主導的動態圖派(Meta / PyTorch):戰略意圖是最大化開發者覆蓋。在快速捕獲研究心智後,通過 torch.compile 補足生產效能,形成從論文到部署的一條龍生態。
  • 以函式式變換為核心的科學計算派(Google / JAX):通過 jitgradvmap 等高階函式組合圖變換,追求極致的數學表達力和並行可擴充套件性。在無狀態的確定性場景下優勢極大,但在引入有狀態層(如 BatchNorm)時需要特殊處理。
  • 以全場景和軟硬一體為目標的底圖層(華為 / MindSpore;Google TPU 生態):前者通過“圖算融合”減少架構層到晶片指令的損耗,後者以 XLA 為唯一編譯入口,確保 TPU 上極致效能。這種深度繫結模式效能壁壘高,但生態的開放性與相容性是其長期挑戰。

綜合來看,純粹靜態圖的獨立產品已逐步被市場邊緣化,當前競爭焦點是誰能在保持 Eager 模式開發體驗的前提下,提供最高效、最無感的端到端圖編譯最佳化

風險

評估計算圖技術和相關生態時,以下風險維度值得密切追蹤。

  • 技術碎片化風險:架構和編譯器的持續分化(PyTorch、JAX、Triton、MLIR 各自演進)導致硬體廠商適配成本高企,可能導致某些新興硬體(如國產 NPU)在主流架構上的計算圖支援長期滯後。
  • 功能安全與可解釋性風險:編譯器的激進最佳化(如代數重寫、非同步執行排程)可能引入數值誤差或不確定性。在自動駕駛、醫療診斷等強安全領域,計算圖最佳化後的行為是否完全符合作者意圖,是需要通過形式化驗證等手段持續研究的課題。
  • 鎖定與遷移成本:一旦模型研發深度繫結在某一架構的圖匯出格式或特定編譯器後端(如完全依賴 TensorRT 的最佳化 Pass),向其他硬體平台或其他架構遷移的工程成本將很高。這是企業級基礎架構選型的主要非技術風險。
  • 開源治理風險:核心計算圖編譯器(如 MLIR、Triton)依賴於活躍的開源社群和多公司聯合貢獻。若主導公司改變開源策略或社群分裂,將直接影響下游所有依賴方。

誤讀糾偏

  • 誤讀 1:“計算圖就是神經網路結構圖” 糾偏:神經網路結構圖(如 ResNet 的殘差塊連線)是宏觀邏輯,計算圖是操作級別的執行計劃。同一網路結構可以有不同的計算圖表示(例如,使用不同的運算元融合策略或並行切分方式)。計算圖更接近編譯器裡的 IR,而非演算法示意圖。
  • 誤讀 2:“動態圖架構沒法做靜態圖級最佳化” 糾偏:PyTorch 2.x 的 torch.compile 和 TensorFlow 的 @tf.function 均證明動態圖可以通過 trace、JIT 或位元組碼分析獲得計算圖並執行運算元融合、記憶體規劃等最佳化。現代趨勢是前端 Eager、後端編譯器圖化,打破了兩者絕對對立。
  • 誤讀 3:“有了計算圖編譯器,AI 晶片就能跑起來” 糾偏:將標準計算圖運算元對映到 AI 晶片專有指令集,只是使晶片“能跑”。要讓晶片跑得效率和利用率俱佳,需要排程演算法、記憶體層級管理、高效能運算元庫等軟硬體協同設計。計算圖是名片,背後的全棧軟體體系才是晶片競爭力的核心。

最新事件

公開資料顯示,2023 年至 2024 年初,計算圖領域在架構與編譯器棧上出現關鍵進展:

  • PyTorch 2.0 及後續版本持續推進torch.compile 進入穩定迭代,TorchInductor 後端對 Triton 語言的依賴加深,同時增加了對 C++ 部署場景的 AOT 編譯支援。該技術方向旨在將研究態程式碼零修改地轉化為生產部署產物,是計算圖混合執行路線的標誌性事件。
  • MLIR 生態商用加速:以 MLIR 為基礎的編譯器專案(如 LLVM 社群的持續投入,以及部分國產晶片廠商公開的技術路線)逐步揭露其 Dialect 設計。MLIR 正從學術專案向產業通用基礎設施過渡,成為連線 TensorFlow、PyTorch 和自研晶片的通用中間層。
  • JAX 使用者群從科研外溢:由於 JAX 在純函式計算圖上的並行變換優勢,部分大型模型訓練創業公司公開提及在其內部架構中擴充套件了 JAX 的 SPMD 策略,用於探索超出標準 3D 並行的混合並行方案。
  • ONNX 與 PyTorch 部署線進一步整合:微軟與 PyTorch 團隊在 ONNX Runtime 的訓練功能上合作加深,旨在將雲端上分散式訓練的圖最佳化直接與 ONNX 生態打通。此為計算圖跨架構標準化流動的階段性進展。

追蹤指標

若希望持續觀察計算圖技術與產業動態,建議追蹤以下可觀測指標:

  1. 開源架構版本釋出註記:PyTorch Releases、TensorFlow Releases 中關於 torch.compile 特性、圖最佳化效能提升百分比的表述;JAX 的 Changelog 中關於 shard_map 等函式變換的更新。
  2. 主要 AI 硬體廠商的架構支援宣告:當 NVIDIA、華為、AMD 等在新硬體釋出時,所宣稱的“支援 PyTorch / TensorFlow 開箱可用的計算圖最佳化”程度,是量度其軟體棧成熟度的直接訊號。
  3. 學術會議趨勢:MLSys、OSDI、ASPLOS 等系統會議中,關於計算圖 IR 設計、自動並行演算法、深度編譯器最佳化論文的數量與來源。高影響力的論文往往預示著下一代產品技術方向。
  4. 獨立基準測試:MLPerf 訓練與推論基準測試中,各提交方對於架構、編譯器和圖最佳化策略的公開說明。這可以間接反映不同計算圖方案在標準化場景下的效能表現。
  5. GitHub 倉庫活躍度:核心編譯器專案(如 MLIR、Triton、OpenXLA)的 Commits 頻率、Issue 討論熱度和貢獻者多樣性。這是評估開源專案真實生態健康度的有效先行指標,所有資料均為公開資訊。

信源

本報告所參考的公開資訊源包括:

  • 學術論文:Baydin, A. G., et al. “Automatic differentiation in machine learning: a survey.” JMLR, 2018; Paszke, A., et al. “PyTorch: An Imperative Style, High-Performance Deep Learning Library.” NeurIPS, 2019; Lattner, C., & Pienaar, J. “MLIR: A Compiler Infrastructure for the End of Moore’s Law.” arXiv, 2020.
  • 官方文件與部落格:Google XLA 最佳化編譯器文件; PyTorch 團隊 “PyTorch 2.0” 系列工程部落格 (2023); NVIDIA TensorRT 開發者指南及技術部落格; Apache TVM 社群文件.
  • 行業報告與新聞:MarketsAndMarkets 深度學習市場報告摘要(引用2023年口徑);Fortune Business Insights 邊緣 AI 推論市場報告摘要(引用2023年口徑);相關公司的公開技術路線分享與官方新聞稿。
  • 宣告:由於檢索狀態,未能獲取特定公司的財務數字、具體市場份額百分比。所有涉及市場規模的表述均基於公開第三方報告摘要,且已註明為公開資訊中的推估資料。任何未經註明的商業資料均視為“公開資料未見”。
source: 公開揭露與公開資料整理 本頁僅用於產業鏈學習、資訊檢索和研究輔助;不構成投資建議,不預測漲跌,不提供買賣、部位或目標價建議。
完整概念頁 複盤 13 節結構 公司投研頁 沿產業鏈找到受益公司 投資課 把概念轉成可跟蹤模型