OpenAI 聯合輝達等開源 MRC 協議:微秒級繞開故障,讓超算訓練不掉線
OpenAI 聯合 AMD、Broadcom、Intel、微軟與 NVIDIA 通過 OCP 開源了 MRC 網路協議。它能將資料切片分散到數百條網路路徑,並在微秒內繞開硬體故障。該協議已部署在 GB200 超算叢集中,成功保障了多個前沿模型的平穩訓練。

MRC(Multipath Reliable Connection)是 OpenAI 聯合 NVIDIA、AMD、Broadcom、Intel 和微軟共同推出並開源的 GPU 超算網路協議。它主要解決超大規模 AI 叢集訓練中網路擁塞和硬體故障頻發的問題,把資料切片分散到數百條網路路徑同時傳送,並在微秒級時間內自動繞開壞掉的鏈路,防止數萬張 GPU 因單點故障陷入停擺。
目前該協議規範已通過 OCP(開放計算專案)向全行業公開,相關的技術論文《Resilient AI Supercomputer Networking using MRC and SRv6》也同步發表,供硬體廠商和基礎設施工程師參考實現。
它怎麼做到微秒級避障
在大模型同步預訓練中,幾萬張卡在每個步驟都要步調一致地交換資料。以往任何一根網線閃斷或者交換機抖動,整個任務往往就會直接崩潰,或者停頓幾十秒等網路重新計算路由,浪費大量算力。
MRC 擴充套件了現有的 RoCE 協議並結合 UEC 的理念,先從物理拓撲上改變了連線方式。它不把網絡卡當成單一的高速通道,而是把一張 800Gb/s 網絡卡拆成八條獨立的 100Gb/s 鏈路,分別連線八臺不同的交換機,構建出八個並行的網路平面。這樣只需兩層交換機就能連線約 13.1 萬張 GPU,比傳統方案少了一到兩層裝置,成本和功耗更低。
為了用滿這些多路徑,MRC 採用自適應資料包噴灑機制。一次傳輸的資料會被切成小包,隨機散佈到所有平面的數百條路徑上發出。每個資料包都自帶最終記憶體地址,接收端收到後直接按亂序寫入視訊記憶體。一旦某條路徑丟包,MRC 會在微秒內判定該路徑異常並將其剔除,換用備用路徑重傳,同時在後臺傳送探測包檢查故障鏈路是否恢復。
更徹底的是,它直接幹掉了 BGP 等複雜的動態路由協議,改用基於 SRv6 的靜態源路由。傳送端在打包資料時,就把途徑的交換機編號直接寫進 IPv6 目標地址。交換機收到包後只需按預設的靜態轉發表盲轉並剝離自己的標籤,完全不需要參與路由計算,從根源上消除了交換機軟體異常導致的路由故障。
實際效果與落地情況
MRC 已經在 OpenAI 最大的 NVIDIA GB200 超算叢集中全面投產,包括位於得克薩斯州阿比林與 OCI 合作的叢集,以及微軟的 Fairwater 超算。在訓練支撐 ChatGPT 和 Codex 的前沿模型期間,這套系統經受住了高頻故障的考驗。
根據公佈的資料,在叢集每分鐘出現多次鏈路閃爍的情況下,同步預訓練作業完全不受影響,甚至不需要運維人員立即搶修。OpenAI 團隊在訓練期間曾直接重啟了 4 臺 Tier-1 交換機,或線上帶電維護線纜,整個訓練任務沒有發生任何中斷。如果一張 8 埠網絡卡斷掉其中 1 個埠,MRC 會自動避開損壞的平面,叢集通訊僅出現輕微降速,整體任務平穩執行。
想使用 MRC 的開發者和硬體團隊,目前可以直接在 Open Compute Project 官網獲取完整的規範文件和設計論文。由於它需要將邏輯下沉到網絡卡硬體中,目前主要面向具備 800Gb/s 網絡卡設計能力、自建大規模 RDMA 網路的雲廠商與超算架構師。
為什麼重要
這套協議代表了 AI 基礎設施從拼硬體頻寬轉向拼系統容錯的一個分水嶺。我們認為,OpenAI 把核心網路規範免費扔給 OCP,表面上是做開源貢獻,實際上是在聯合輝達以外的多家晶片和網路巨頭,共同推動下一代乙太網路標準的落地,避免未來被單一專有網路生態深度鎖定。
對於正在搭建千卡、萬卡叢集的企業來說,現在並不需要急著推翻現有架構,但 MRC 的源路由與多平面拆分思路非常值得借鑑。隨著單叢集規模突破十萬卡,硬體故障早晚會成為家常便飯,能夠像 MRC 這樣把網路容錯做進微秒級,才是叢集真正能跑滿算力的底氣所在。
來源 (1)
- openai.com(在新分頁開啟)原文openai.com