模型層 開放閱讀

ZeRO

Zero Redundancy Optimizer

概念 ID
zero-redundancy-optimizer
更新時間
2026-05-29
來源數量
待補

ZeRO

3 秒看懂

ZeRO(零冗餘最佳化器)是一套分散式訓練記憶體最佳化技術,通過將最佳化器狀態、梯度和模型引數在多個GPU間分片儲存,幾乎消除了資料並行中每塊GPU對模型狀態的完整複製,使千億甚至萬億引數大型模型的訓練擺脫了單卡視訊記憶體上限的硬約束。

3 分鐘產業解釋

在訓練GPT-4、LLaMA這類大語言模型時,傳統“資料並行”(Distributed Data Parallel, DDP)要求每塊GPU儲存一份完整的模型副本。除了模型引數本身,像Adam最佳化器的動量(momentum)和方差(variance)等狀態資料,每個引數就要額外佔用12位元組記憶體,往往比模型本身還大。當模型規模膨脹到百億引數級別,單塊價值上萬美元的80GB視訊記憶體A100顯示卡也無力承載。

ZeRO並沒有發明新的數學演算法,而是採用了一套極其樸素卻高效的分片策略,將“每家獨棟別墅”變為“分散式倉儲”:

  • Stage 1 (Pos):將Adam最佳化器狀態(12位元組/引數)均分到N塊GPU上。每塊卡只存1/N,更新引數時各卡互通有無,臨時拼接出完整的最佳化器狀態。此階段視訊記憶體佔用降至原先的約1/4~1/3。
  • Stage 2 (Pos+g):連反向傳播產生的梯度也進行分片。每塊GPU只負責計算和儲存自己分到的那份梯度,直接釋放了此前儲存完整梯度的空間。
  • Stage 3 (Pos+g+p):最終連fp16格式的模型引數本身也分片儲存。計算某一層時,GPU通過高速網際網路絡(如NVLink/InfiniBand)瞬時收集該層完整引數,算完即釋放,再按需取用下一層。此時,單卡視訊記憶體佔用與GPU數量成反比。

這套組合拳將單GPU記憶體佔用從“1倍模型大小”變為“1/N倍模型大小”。理論上,只要堆疊足夠多的GPU,就能訓練任意規模的大型模型。它使得資料並行這一最簡單易用的範式,重新成為萬億引數時代的主流分散式訓練基石,直接促成了Bloom(1760億引數)、T-NLG(170億引數)等大型模型的成功落地。

技術原理

ZeRO源自微軟DeepSpeed團隊在SC 2020發表的論文《ZeRO: Memory Optimizations Toward Training Trillion Parameter Models》,其核心在於系統性地解決了混合精度分散式訓練中的記憶體畫像問題。

1. 記憶體消耗的解剖

在大型模型混合精度訓練(fp16引數與梯度,fp32主引數與最佳化器狀態)中,一塊GPU的記憶體主要被三類“大軍”佔領:

  • 模型狀態(Model States):包括fp16引數(2位元組)、fp16梯度(2位元組)、fp32最佳化器狀態(Adam包含主引數、動量、方差,共12位元組)。每引數記憶體消耗合計精準為 2 + 2 + 12 = 16 位元組。這是ZeRO的主攻方向。
  • 殘餘狀態(Residual States):前向傳播產生的啟用值(Activations)、臨時緩衝區等。它們主要由啟用檢查點(Activation Checkpointing)、張量並行(TP)等技術管控。
  • 視訊記憶體碎片(Fragmentation):視訊記憶體分配與回收導致的非連續空閒空間。

在純資料並行(DP度為Nd)下,所有N塊GPU均持有完整私有副本,模型狀態的冗餘度高達Nd倍,這對叢集總視訊記憶體是巨大的浪費。ZeRO-1/2/3逐級分片最佳化器狀態(Pos)、梯度(g)和引數(p),將單GPU模型狀態記憶體從16Ψ(Ψ為引數量)逐步削減為16Ψ/Nd,近乎實現了完美的線性弱擴充套件。

2. 三級分片的靜態記憶體建模

設模型引數量為Ψ(Billion),資料並行度為Nd

  • DDP基線M_baseline = 16Ψ 位元組。例如,一個100B模型需約1.6TB視訊記憶體,遠超單卡A100(80GB)。
  • ZeRO-1 (僅Pos)M1 = (4 + 12/Nd)Ψ 位元組。僅分片最龐大的最佳化器狀態。
  • ZeRO-2 (Pos+g)M2 = (2 + 2/Nd + 12/Nd)Ψ 位元組。繼續分片梯度,進一步壓縮。
  • ZeRO-3 (Pos+g+p)M3 = (16/Nd)Ψ 位元組。記憶體佔用與Nd成反比。當Nd=64時,100B模型的單卡模型狀態記憶體需求降至僅25GB。

可見,隨著Nd增大,模型狀態不再構成瓶頸,殘餘狀態(尤其是啟用值)和通訊開銷成為新的主要約束。

3. ZeRO-3 的通訊機制與運算元

ZeRO-3並未將某一層的計算切分到多卡(那是張量並行的任務),而是讓每塊GPU獨立、完整地計算每一層。其關鍵操作在於對分片引數的“按需索取”與“聚合釋放”。以典型Transformer層為例:

  • 前向傳播:GPU執行到第L層時,發現本地只有該層引數的1/Nd分片。它發起一次AllGather通訊,從組內所有GPU收集完整的第L層引數,重組後執行本層的前向計算。緊接著,計算生成的啟用值傳入下層,而本層剛拼好的完整引數若無後續需求,其視訊記憶體即可被立即釋放(或延遲釋放,由策略決定)。
  • 反向傳播:梯度反向傳播至第L層時,過程對稱。同樣需要AllGather收集一次完整引數(若前向釋放後已無快取)以計算區域性梯度。計算完成後,各GPU並不持有完整梯度,而是通過ReduceScatter操作,將聚合後的梯度按分片責任分發,每個GPU只保留自己應更新的那1/Nd梯度的累加結果,用於後續更新本地那個引數分片。

此過程中,每層的通訊均由NCCL庫的高效集合通訊原語完成。ZeRO-3額外引入的通訊總量約為每訓練步(前向與反向各一次AllGather,加上梯度ReduceScatter),但優秀的工程實現(如DeepSpeed引擎)會通過將“下一層引數的AllGather”與“當前層計算”進行流水線式重疊,隱藏絕大部分通訊延遲。

4. 與3D並行的正交疊加

ZeRO是資料並行(DP)維度的創新,可與以下兩種並行策略正交組合,形成應對萬卡級訓練的3D混合並行:

  • 張量並行(TP,層內):將單層內的矩陣乘法切割到多卡,其通訊極密集但能有效降低單層的視訊記憶體和延遲峰值。Megatron-LM是其先驅。通常TP度限制在8以內。
  • 流水線並行(PP,層間):將不同Transformer層組分配給不同GPU,通過流水線減少中間啟用值,通訊量極低。 典型組合為:先在一個節點內用TP分割大矩陣,再跨節點用PP切分層組,最後對這兩者構成的“模型副本”應用ZeRO驅動資料並行。ZeRO的分片通訊組(N_dp)一般保持在8至64之間,以平衡視訊記憶體節省與跨節點網路延遲。

關鍵引數與關鍵概念

  • 分片粒度(Stage):1/2/3三級,是視訊記憶體、通訊、易用性的權衡旋鈕。Stage 2常被作為大規模訓練的預設起點。
  • 分片通訊組大小(Nd):應用於ZeRO的資料並行GPU數量。增大Nd可近乎線性地減少單卡模型狀態記憶體,但會增加跨節點AllGather頻率和延遲。
  • 通訊計算重疊(Comms Overlap):衡量ZeRO-3實現優劣的核心工程指標。引擎是否能在計算層N時,提前在後臺拉取層N+1的引數。
  • AllGather頻寬利用率:ZeRO-3的前向/反向效能瓶頸。它高度依賴GPU間互聯頻寬(如NVLink 100GB/s+,或InfiniBand 50GB/s+)。
  • 解除安裝開關(Offload):將最佳化器狀態、梯度甚至引數解除安裝到CPU RAM或NVMe SSD。由ZeRO-Offload(2021年提出)和ZeRO-Infinity(2021年提出)驅動,利用CPU計算Adam更新,將GPU視訊記憶體壓力向異構儲存空間轉移,是以PCIe頻寬換取容量上限的典型範例。

技術路線與行業格局

維度基礎資料並行 (DDP)ZeRO-1ZeRO-2 / FSDPZeRO-3 (FSDP)張量並行 (TP) 為主
分片物件最佳化器狀態+梯度+模型引數層內矩陣
單GPU模型規模上限受單卡視訊記憶體硬約束約擴大3~4倍約擴大8~10倍線性擴充套件到叢集總視訊記憶體受TP度限制,擴充套件性有限
前向額外通訊量每層1次AllGather每層2次AllReduce
反向額外通訊量梯度AllReduce同左ReduceScatter代替AllReduce每層AllGather+ReduceScatter每層2次AllReduce
計算效率折損基準<1%<5%5%~15%高通訊壓力下效率折損顯著
實現與維護複雜度極低高,需精細調參極高,需手動切割計算圖
代表架構PyTorch DDPDeepSpeedDeepSpeed, PyTorch FSDPDeepSpeed, PyTorch FSDPMegatron-LM, Mesh-TensorFlow

注:效率折損為公開社群大規模訓練經驗定性估算,實際值受限於模型結構、GPU網拓撲和重疊實現質量。資料來源:微軟DeepSpeed論文(2020)、Meta PyTorch FSDP技術報告(2022)。

技術演進年表

  • 2017~2019:Transformer時代來臨,Megatron-LM提出張量並行(TP),首次將模型層切分至多GPU,開創模型並行先河。
  • 2019:微軟釋出ZeRO論文及DeepSpeed庫,其“資料並行友好型”分片策略迅速被接納為標配。
  • 2020~2021:ZeRO-3成功訓練T-NLG(170億參)、Bloomz(1760億參);PyTorch社群啟動FSDP,對標ZeRO-3。
  • 2023至今:PyTorch原生FSDP穩定性與效能日趨成熟,逐漸成為新專案的首選。ZeRO-Infinity支撐引數量跨入萬億。3D混合並行(TP+PP+ZeRO-DP)成為行業共識,千卡至萬卡叢集訓練成為前沿模型常態。

上游供應鏈分析

  • 核心計算硬體(GPU/NPU):以輝達(NVIDIA)A100 80GB(HBM2e,1935 GB/s,2021年出貨)和H100 80GB(HBM3,3350 GB/s,2023年出貨)為代表。其高頻寬視訊記憶體(HBM)容量直接決定了分片後殘餘狀態(啟用值)的容納上限,是ZeRO配置的物理底線。
  • 高速互聯與網路裝置
    • 節點內互聯:輝達NVLink與NVSwitch,提供900 GB/s(A100)至900 GB/s雙向(H100)的GPU直連頻寬,是保障ZeRO-3頻繁AllGather效能的生命線。
    • 節點間互聯:輝達ConnectX-7系列(400Gb/s)、InfiniBand NDR交換器、Spectrum-4乙太網路交換器(800G)等。ZeRO-3/FSDP跨節點通訊依賴GPU Direct RDMA技術繞過CPU,對網路延遲和頻寬極其敏感。
  • 伺服器系統與儲存:ZeRO-Offload/Infinity解除安裝方案使CPU記憶體(DRAM)容量與頻寬成為關鍵配置項。單節點配置2TB~4TB的DDR5記憶體成為面向萬億引數訓練節點的主流趨勢(如輝達DGX及超大規模資料中心定製機)。同時,CXL(Compute Express Link)記憶體互聯技術、高速企業級NVMe SSD(PCIe 4.0/5.0)因可平滑擴充套件異構儲存層級而受益。

下游應用場景

  • 基礎大語言模型預訓練:從百億(如LLaMA-2 70B,2023年)到萬億引數級的稠密或稀疏MoE(Mixture of Experts)模型的核心訓練技術。
  • 多模態大型模型:如Sora等影片生成模型,其時空維度啟用值極大,ZeRO分片與啟用檢查點、解除安裝技術結合,是在有限預算下擴大規模的關鍵。
  • 模型微調與RLHF:全量微調和基於人類反饋的強化學習(RLHF)訓練同樣面臨最佳化器狀態和梯度記憶體高峰,ZeRO-2/3可顯著降低微調門檻。
  • 科學計算與蛋白質預測:如AlphaFold等,其模型序列長度和結構複雜,通過ZeRO可擴充套件處理更大尺度的科學問題。

主要參與公司與市場影響

  • 微軟 / DeepSpeed:ZeRO的創造者與DeepSpeed庫維護者。作為Azure AI超算的核心工具鏈,直接服務於微軟雲端和OpenAI的GPT系列(如GPT-4)訓練,代表資產為DeepSpeed開源社群及微軟AI服務(來源:微軟官方部落格,2020-2023)。
  • Meta / PyTorch FSDP:FSDP(完全分片資料並行)的官方實現者與行業推動者,內部大規模用於LLaMA家族(2023年)的訓練。其集成於PyTorch原生生態(DTensor),正深刻分流一部分原先依賴DeepSpeed的開發者,鞏固了其在PyTorch生態中的基礎設施地位(來源:PyTorch官方文件,2023;Meta AI部落格)。
  • 輝達(NVIDIA):通過NeMo Megatron架構,將自研TP/PP策略與ZeRO/FSDP深度融合,形成行業標準組合。持續最佳化NCCL通訊庫以壓榨硬體極限,並通過銷售高獲利的GPU(如H100)和InfiniBand網路裝置間接受益(來源:NVIDIA開發者部落格, SC23會議)。
  • 潞晨科技 / Colossal-AI:國內對標開源專案,提供與ZeRO類似的並行最佳化組合。其通過異構記憶體管理和自動並行化策略,試圖解決DeepSpeed在某些場景下易用性不足的問題,代表國內在大型模型訓練基礎設施方向的創業力量。
  • 主流雲端廠商:AWS、Google Cloud、華為雲端均在其AI平台中深度整合ZeRO/FSDP邏輯,並對其底層網路(EFA、OCS、昇騰互聯)進行了針對性配置最佳化。

市場規模與資本對映

公開資料未見直接以“ZeRO”為口徑的獨立市場統計與規模預測。其價值深度嵌入在大型模型訓練與AI伺服器市場之中。

  • AI訓練伺服器市場:據TrendForce(2024年3月報告)統計,2023年全球AI伺服器出貨量預估近120萬臺,年增逾38%。其中,配高頻寬記憶體與高速網絡卡的模型訓練節點佔比持續提升。
  • 硬體升級驅動力:ZeRO驅動的萬億引數訓練,對GPU叢集提出了“高互聯>高算力>高視訊記憶體”的特定需求,直接推動對輝達NVLink交換器、800G InfiniBand/Ethernet網絡卡、大容量DDR5伺服器記憶體的需求增長。這構成了AI基礎設施建設中的確定性增量市場,利好資料中心級互聯與交換器產業鏈。

玩家對比:DeepSpeed ZeRO vs. PyTorch FSDP

對比維度DeepSpeed ZeROPyTorch FSDP
開發者與生態繫結微軟DeepSpeed團隊Meta PyTorch核心團隊
原生整合度作為獨立第三方庫,需額外安裝與配置PyTorch 2.x原生模組(torch.distributed.fsdp),無縫整合
Stage 2 成熟度極早成熟,文件豐富,社群經驗沉澱厚近兩版(2.0後)穩定性與價效比提升顯著,追趕迅速
Stage 3 效能與調優提供更細粒度的分片管理、解除安裝(ZeRO-Infinity)、混合精度外掛API更簡潔統一,故障恢復、meta初始化等與生態深度耦合,易用性更佳
典型訓練案例GPT-NeoX, Bloom, Megatron-DeepSpeedLLaMA 2/3, 部分Llama-Factory
趨勢曾經的先行者,在萬億引數及解除安裝方案上仍有深厚技術積累憑藉生態整合簡化開發流程,正成為多數新超大型模型訓練(尤其在PyTorch 2.x生態下)的首選

注:截止2024年中期,FSDP與DeepSpeed在各自最新版中Stage 3的效能差距已至相對接近區間(10%~15%以內),選型更多取決於團隊技術棧、與TP等其他並行的耦合需求以及基礎設施適配。

核心風險與約束

  1. 通訊瓶頸與隱式效能天花板:ZeRO-3的通訊量高,在跨多機、低頻寬(如25GbE)網路上,因無法有效重疊通訊與計算,效能衰減可能超30%,嚴重時反而不如Stage 2 + 更小模型並行度。大規模叢集的網路故障域問題也需正視。
  2. 工程實現複雜度與調參牆:從Stage 2進階到Stage 3並非無縫,涉及分片粒度、offload策略、通訊組劃分、啟用檢查點策略等精細調參,除錯不當易引發視訊記憶體溢位(OOM)或計算效率暴跌。
  3. 對高頻寬硬體的強依賴:ZeRO有效性的前提是NVIDIA InfiniBand或RoCEv2等高效能網路。這給非此類標準硬體的雲端環境或國產NPU平台遷移帶來底層通訊庫適配難題。
  4. 生態碎片化風險:PyTorch官方強力推動FSDP,對第三方庫DeepSpeed的社群主力支援形成分流。初創工具鏈(如ColossalAI)若不能在易用性或效能上形成代差,可能面臨被官方方案收斂替代的風險。

核心誤讀糾偏

  • 誤讀1:“ZeRO完全消除了記憶體冗餘,因此叫‘零冗餘’最佳化器。” 事實:ZeRO消除的是“模型狀態”(最佳化器狀態、梯度、引數)在資料並行組內的跨GPU冗餘。但啟用值、計算臨時緩衝區等“殘餘狀態”的冗餘仍存在,並在大規模情況下成為新的記憶體瓶頸。這是工程最佳化上的一種相對“零冗餘”,而非絕對。
  • 誤讀2:“ZeRO-3把模型引數都切碎了,與模型並行沒有區別。” 事實:本質區別在於“誰的活”。ZeRO-3是分片儲存,全量計算——每塊GPU獨立負責一整層的矩陣乘法,只是在計算前通過AllGather將引數“拼”回來。而模型並行(如張量並行TP)是全量儲存,分片計算——每塊GPU只算矩陣乘法的一部分,然後合併結果。二者通訊模式和瓶頸完全不同,ZeRO保持了資料並行在程式碼上的簡潔性。
  • 誤讀3:“用了ZeRO,所有最佳化器的視訊記憶體佔用就都一樣了。” 事實:ZeRO的主要紅利正是來自於對佔用巨大的Adam最佳化器狀態(12位元組/引數)的分片。若換用記憶體友好的最佳化器(如SGD僅4位元組,Lion約8位元組,8-bit Adam約4-6位元組),ZeRO節省的記憶體絕對量與比例都會顯著縮小。大型模型社群持續探索非自適應最佳化器以從源頭上“斷舍離”。

最新事件與前沿動態(截至2025年5月)

  • PyTorch FSDP2的釋出與普及:2024下半年,基於DTensor的FSDP2 API已逐步穩定,其更靈活的跨維分片策略和與torch.compile的深度相容,吸引了眾多新專案從DeepSpeed遷移。Meta於2024年底公開分享的內部叢集FSDP大規模訓練實踐,證明了其在數千卡GPU叢集的有效性(來源:PyTorch Conference 2024)。
  • DeepSpeed ZeRO-Infinity的CXL應用:微軟Azure在2024年末展示了利用CXL 2.0共享記憶體池,實現跨越節點的ZeRO-Infinity解除安裝,顯著降低了對單節點大容量記憶體的配置要求,並提升了彈性,被視為下一代記憶體解耦訓練架構的雛形(來源:微軟研究院部落格,2024年12月)。
  • 國產AI晶片對ZeRO的適配:多家國產NPU廠商(如昇騰,寒武紀)在2024-2025年批次完成對FSDP/ZeRO-3通訊運算元的適配。但由於晶片間互聯技術從私有協議轉向開放標準的進度不同,效能與穩定性問題仍是規模化部署的主要障礙(來源:各廠商公開適配指南)。
  • MoE模型的記憶體新挑戰:隨著Mixtral 8x7B、DeepSeek-V2等MoE模型的火爆,其稀疏啟用特性帶來了全新的視訊記憶體碎片和專家引數分片挑戰。業界正探索結合ZeRO與專家並行(Expert Parallelism)的混合策略。

關鍵追蹤指標

  • 架構迭代與社群遷移率:GitHub上DeepSpeed與PyTorch FSDP的Star增長、Issue解決率、版本釋出頻率。新開源的大型模型訓練程式碼倉庫對二者的選取比例(可觀察HuggingFace transformers Trainer的整合偏好變化)。
  • 頂尖模型訓練配置的透明公開:關注Meta、Microsoft、Google、國內頭部AI Lab釋出的技術報告,觀察其100B+引數模型訓練時,對“DP/TP/PP”維度的配置組合與ZeRO Stage選擇。例如,未來是否出現“FP8訓練下ZeRO退居Stage 2”的趨勢。
  • GPU與互聯硬體迭代:輝達Blackwell(GB200)對NVLink-C2C及統一大記憶體的落地進展;InfiniBand/乙太網路800G埠的交換器與網絡卡滲透率;AMD、Intel AI加速卡生態對各類集合通訊庫(RCCL/oneCCL)對ZeRO模式的支援度與效能報告。
  • 異構記憶體技術採用率:CXL記憶體介面在主流通用AI伺服器中的實際配置率;三星、SK海力士HBM-PIM(存內計算)等新技術對視訊記憶體頻寬瓶頸的緩解程度,及其對ZeRO解除安裝策略必要性的潛在影響。

核心資訊源

source: 公開揭露與公開資料整理 本頁僅用於產業鏈學習、資訊檢索和研究輔助;不構成投資建議,不預測漲跌,不提供買賣、部位或目標價建議。
完整概念頁 複盤 13 節結構 公司投研頁 沿產業鏈找到受益公司 投資課 把概念轉成可跟蹤模型