powered by TechFeed
表示モード
Meta

MetaがAI向け独自ネットワークプロトコル「MetaRoCE」を完全オープン公開 — 1%パケットロスでもスループット86%維持、百万GPU規模を見据えた設計

8月24日、Meta Engineeringが「MetaRoCE: A New RDMA Transport Built for AI-Scale Ethernet」と題した記事を公開した。AIワークロードにおけるGPUクラスタ間通信はボトルネックになりやすく、特にall-reduceやall-to-allといったCollective演算では、最も遅い転送が全体のペースを決める。MetaはこのネットワークI/Oの問題を、スイッチ側ではなくNIC(ネットワークインターフェースカード)側に知性を持たせるというアプローチで解決しようとしている。本記事はその独自RDMAトランスポートプロトコル「MetaRoCE」の技術詳細と公開方針を詳しく解説している。

8月24日、Meta Engineeringが「MetaRoCE: A New RDMA Transport Built for AI-Scale Ethernet」と題した記事を公開した。AIワークロードにおけるGPUクラスタ間通信はボトルネックになりやすく、特にall-reduceやall-to-allといったCollective演算では、最も遅い転送が全体のペースを決める。MetaはこのネットワークI/Oの問題を、スイッチ側ではなくNIC(ネットワークインターフェースカード)側に知性を持たせるというアプローチで解決しようとしている。本記事はその独自RDMAトランスポートプロトコル「MetaRoCE」の技術詳細と公開方針を詳しく解説している。


なぜ既存のRoCEでは不十分か

既存のRoCEv2(RDMA over Converged Ethernet v2)は、ネットワークがパケットを順番通りに届けることを前提にしている。この保証のためにPFC(Priority Flow Control)という一時停止フレームの仕組みが必要で、これがHead-of-Lineブロッキング(先頭のパケットが詰まると後続が全て止まる現象)を引き起こす。また、マルチプレーン構成や大規模ネットワークで効果的なパケットスプレイ(複数経路に分散送信する手法)とも相性が悪い。

MetaはすでにRoCEv2で数十万GPU規模の分散AI学習を実現したことを報告しているが、百万GPU規模へのスケールアップには別のアプローチが必要だと判断した。

MetaRoCEの核心:「ファブリックはパケットを見る、NICはインテントを見る」

MetaRoCEの設計思想を一言で表すと、インテリジェンスをスイッチからエンドポイント(NIC)に移すことだ。これにより、以下の5つの特性が実現される。

ネイティブなアウトオブオーダー配信

MetaRoCEはパケットが順序通りに届かないことを「例外」ではなく「通常状態」として扱う。すべてのパケットが宛先情報を自身で持つため、到着した瞬間に再並び替えバッファなしで最終メモリ位置への書き込みが完了する。Head-of-Lineブロッキングは原理的に発生しない。

ネイティブなマルチパシング

接続ごとに複数の物理パスを「ファーストクラス」として管理し、パケット単位でスプレイする。各パスは独立したUDP送信元ポートとECMPエントロピーを持つため、NICが任意のタイミングで輻輳したルートから別ルートへ切り替えられる。パスごとにウィンドウとRTT推定値を持つことで、輻輳と障害を区別した上でのリバランスが可能だ。

損失耐性

PFCも一時停止フレームも不要。256ビットのSACK(Selective Acknowledgment)ビットベクターで欠けたパケットを検出し、その欠損が発生したパスでのみ即座に再送する。損失をゼロにするのではなく、損失があっても正しく動くよう設計されている。

両側からの輻輳制御

送信側はECNベースのAIMD輻輳制御、受信側は自身の受信帯域に対する公平シェアのレートヒントを返す。インキャスト(多数のサーバが同時に1台へ送信する状況)が1〜2ラウンドトリップで解消できる設計だ。

トポロジー非依存

MetaRoCEがスイッチに要求するのは「ECNマーキング」と「ECMP」のみ。パケットトリミングやin-networkテレメトリ、クレジットベースのフロー制御などは不要で、fat-tree、マルチプレーン、ディープバッファ、シャロウバッファといった異なるファブリックで同一トランスポートが動作する。

実測値:1%パケットロスでもスループット86%を維持

AMDのPensandoプログラマブルNICを用いた64ノードのAMD GPUクラスタで、RCCLコレクティブ(all-reduceおよびall-to-all)を使いRoCEv2と直接比較した結果:

  • 通常条件下でMetaRoCEはRoCEv2より高いスループットと低いフロー完了時間を達成
  • 1%パケットロス条件でRoCEv2が大きく劣化する中、MetaRoCEは約86%のスループットを維持
  • 10%という極端なパケットロスでも有効な帯域を維持し続けた
  • 4プレーン・8プレーン構成での最大4,000同時接続検証で、スループットがプレーン数に比例してスケールすることを確認

「1%のパケットロスでRoCEv2が大きく劣化する」という点は、PFCによるフロー停止が連鎖し、クラスタ全体のスループットが急落するRoCEv2の構造的な脆弱性を示している。RoCEv2はパケットロスが事実上ゼロであることを前提とした設計であるため、わずか1%の損失でも輻輳制御が破綻しやすい。MetaRoCEの86%維持という数字は、損失耐性を「おまけ機能」としてではなく設計の中核に据えたことによる必然的な結果だ。また、プレーン障害をシミュレートした際には、アプリケーションやオペレーターの介入なしにトラフィックが自律的に再分配された。

OCP経由でフルオープン公開

MetaRoCEはOpen Compute Project(OCP)を通じて以下を公開する:

  • フルプロトコル仕様(OCP経由で任意ベンダーが実装可能)
  • libsoftmetaroce:標準UDPソケット上でカスタムハードウェアなしに動くソフトウェアリファレンス実装。シリコン開発の動作モデルにもなる
  • プロダクション対応コンプライアンステストスイート:ベンダーが仕様適合を証明するためのツール群

既存のRDMA Verbs APIおよびソフトウェアスタックは修正なしに動作し、マルチプレーンサポートなどの拡張機能は拡張APIで提供される。

正式リリースは2026年OCP Global Summit(10月開催予定)で、DPDKに最適化したソフトウェアリファレンス実装とコンプライアンスフレームワークとともに公開される。

今後の課題

MetaはMetaRoCEをデータセンター内のスケールアウトネットワーキングの解として位置づけつつ、以下を次の課題と明記している:

  • スケールアップ(ラック内):ナノ秒単位の短距離・小メッセージ最適化
  • スケールアクロス(データセンター間):数千キロ離れた拠点間での公平な長距離リンク共有
  • ストレージ・KVキャッシュ用途:分散ストレージのインキャスト制御

詳細はMetaRoCE: A New RDMA Transport Built for AI-Scale Ethernetを参照していただきたい。