InfiniBand と RoCE のどちらを選択するか

大規模なモデルのトレーニングには、超高帯域幅、超低遅延、超高信頼性のネットワーク要件があります。

長年にわたり、TCP/IP プロトコルはインターネット通信の柱でしたが、AI ネットワークにとって、TCP/IP にはいくつかの致命的な欠点がありました。 TCP/IP プロトコルは遅延が長く (通常は数十マイクロ秒程度)、深刻な CPU 負荷も引き起こします。 RDMA は、オペレーティング システム カーネルの介入なしに、ネットワーク インターフェイスを介してメモリ データに直接アクセスできます。 これにより、高スループット、低遅延のネットワーク通信が可能になり、特に大規模な並列コンピュータ クラスターでの使用に適しています。

InfiniBand、RoCEv1、RoCEv2、および iWARP は、RDMA テクノロジーの 1 つの実装です。 しかし、RoCEv2 は現在では使用されておらず、iWARP も一般的ではありません。 業界で普及しているネットワーク ソリューションは、InfiniBand と RoCEvXNUMX です。

RDMAプロトコルスタック

HPC/AI ワークロードのネットワーク要件は何ですか?

現在、ほとんどのデータセンターは XNUMX 層ネットワーク アーキテクチャを使用していますが、AI クラスターは複雑で大規模な AI タスクを実行するために構築されたスーパーコンピューターです。 コンピューターのワークロードは複数の GPU で並行して実行されるため、高い使用率が必要になります。 したがって、従来のデータセンター ネットワークと比較して、AI データセンター ネットワークはさらなる複雑さに直面します。

  • 並列コンピューティング: AI ワークロードは、同じアプリケーション/コンピューティング タスクを実行する複数のマシンの統合インフラストラクチャです。
  • 規模: HPC/AI タスクの規模は、数千のコンピューティング エンジン (GPU、CPU、FPGA など) に達する可能性があります。
  • タスクの種類: タスクによって、サイズ、実行期間、考慮すべきデータ セットのサイズと量、生成する回答の種類、アプリケーションのコーディングに使用される言語の違い、およびアプリケーションが実行されるハードウェアの種類が異なります。これらすべてが、アプリケーション内のトラフィック パターンを引き起こします。常に変化する HPC/AI ワークロードを実行するために構築されたネットワーク。
  • ロスレス: 従来のデータセンターでは、失われたメッセージは再送信されますが、AI ワークロードでは、メッセージの損失は、計算全体が間違っているか、停止していることを意味します。 したがって、AI データセンターにはロスレス ネットワークが必要です。
  • 帯域幅: アプリケーションがデータにアクセスできるように、高帯域幅のトラフィックをサーバー間で実行する必要があります。 最新の導入環境では、AI またはその他の高性能コンピューティング機能の各コンピューティング エンジンのインターフェイス速度は 400 Gbps に達します。

これらの複雑さは AI ネットワークにとって大きな課題となるため、AI データセンター ネットワークには高帯域幅、低遅延、ジッターなし、パケット損失なし、長期安定性が必要です。

TCP/IPからRDMAへ

低遅延と高い I/O 同時実行性を必要とする HPC/AI などのアプリケーションの場合、既存の TCP/IP ソフトウェアおよびハードウェア アーキテクチャではアプリケーションの要件を満たすことができません。 従来の TCP/IP ネットワーク通信では、カーネルを使用してメッセージを送信するため、データ移動とデータ コピーのオーバーヘッドが高くなります。 たとえば、一般的な IP データ転送では、あるコンピュータ上のアプリケーションが別のコンピュータ上のアプリケーションにデータを送信すると、受信側で次の操作が発生します。

  1. カーネルはデータを受信する必要があります。
  2. カーネルは、データがどのアプリケーションに属するかを判断する必要があります。
  3. カーネルがアプリケーションを起動します。
  4. カーネルは、アプリケーションがカーネル上でシステム コールを実行するのを待ちます。
  5. アプリケーションは、カーネル メモリ空間からアプリケーションが提供するバッファにデータをコピーします。

このプロセスは、ホスト アダプタがダイレクト メモリ アクセス (DMA) を使用する場合、ネットワーク トラフィックのほとんどがシステムのメイン メモリにコピーされることを意味します。 さらに、コンピューターはいくつかのコンテキスト スイッチを実行して、カーネルとアプリケーションを切り替えます。 これらのコンテキストの切り替えにより、CPU 負荷とトラフィックが増加し、他のタスクの速度が低下する可能性があります。

TCP IP送信

TCP/IP送信

従来の IP 通信とは異なり、RDMA 通信は通信プロセスにおけるカーネルの介入をバイパスするため、ホストが別のホストのメモリに直接アクセスできるため、CPU オーバーヘッドが削減されます。 RDMA プロトコルを使用すると、ホスト アダプタは、パケットがネットワークに入った後、どのアプリケーションがパケットを受信するか、およびそのアプリケーションのメモリ空間のどこにパケットを保存するかを決定できます。 ホスト アダプタは、処理のためにパケットをカーネルに送信してユーザー アプリケーションのメモリにコピーするのではなく、パケットの内容をアプリケーション バッファに直接入れます。

RDMA送信

RDMA送信

RDMA 送信により、関連する CPU サイクル数が減少し、スループットとパフォーマンスの向上に役立ちます。 言い換えれば、RDMA の本質は、大規模な分散コンピューティングとストレージのシナリオで、ネットワーク カードが CPU をバイパスしてリモート サーバーのメモリに直接アクセスできるようにし、サーバー間の対話を高速化し、遅延を短縮し、価値の高いコンピューティングとロジック制御のための貴重な CPU リソース。

従来の TCP/IP ネットワークと比較して、InfiniBand と RoCEv2 はカーネル プロトコル スタックをバイパスするため、レイテンシーのパフォーマンスを数桁改善できます。 同じクラスター内の通信がシングル ホップで実現できる場合、カーネル プロトコル スタックをバイパスした後、アプリケーション層でのエンドツーエンドの遅延が 50 マイクロ秒 (TCP/IP) から 5 マイクロ秒 (RoCE) に短縮できることが実験テストで示されています。 ) または 2us (InfiniBand)。

さまざまなテクノロジーのエンドツーエンド通信遅延

InfiniBand ネットワークの概要

InfiniBand ネットワークは、イーサネットの代わりに InfiniBand アダプターまたはスイッチを使用してデータ伝送を実現します。 特定のタイプのイーサネット スイッチのポート間の遅延は 230 ns ですが、同じ数のポートを持つ InfiniBand スイッチの遅延は 100 ns です。

インフィニバンドネットワーク

InfiniBand ネットワークの主要コンポーネントには、サブネット マネージャー (SM)、IB ネットワーク カード、IB スイッチ、および IB ケーブルが含まれます。 InfiniBand スイッチはルーティング プロトコルを実行せず、ネットワーク全体の転送テーブルは集中サブネット マネージャーによって計算され、配布されます。 SM は、テーブルの転送に加えて、InfiniBand サブネット内のパーティション、QoS、およびその他の構成の管理も担当します。 InfiniBand ネットワークでは、スイッチを相互接続し、スイッチをネットワーク カードに接続するために、専用のケーブルと光モジュールが必要です。

ローカルロスレスネットワーク

InfiniBand ネットワークは、クレジット トークン メカニズムを使用して、バッファ オーバーフローとパケット損失を根本的に回避します。 送信者は、受信者が対応する数のパケットを受け入れるのに十分なクレジットを持っていることを確認した後にのみ、パケット送信を開始します。

InfiniBand ネットワーク内の各リンクには、事前に決定されたバッファがあります。 送信者は、受信者で利用可能な所定のバッファのサイズを超えるデータを送信しません。 受信者が転送を完了すると、バッファを解放し、現在利用可能な所定のバッファ サイズを送信者に継続的に返します。 このリンク レベルのフロー制御メカニズムにより、送信者が大量のデータを送信しないようにし、ネットワーク バッファのオーバーフローやパケット損失を防ぎます。

InfiniBand ネットワークにおけるロスレス データ伝送の図

ネットワークカード拡張機能

InfiniBand の適応ルーティングはパケットごとの動的ルーティングに基づいており、大規模な導入において最適なネットワーク利用を保証します。 Baidu Artificial Intelligence Cloud や Microsoft Azure など、InfiniBand ネットワークを使用した大規模 GPU クラスターの例は数多くあります。

InfiniBand ネットワーク カードは速度の点で急速に進化しており、200 Gbps HDR がすでに広く商用導入されており、400 Gbps NDR ネットワーク カードも商用導入され始めています。 現在、市場には NVIDIA、Intel、Cisco、HPE などの主要な InfiniBand ネットワーク ソリューションとサポート機器プロバイダーが存在します。 その中で、NVIDIA は 70% を超え、最も高い市場シェアを誇っています。 次の図は、一般的に使用されるものを示しています InfiniBandネットワークカード.

ネットワークカード拡張機能

RoCEv2 ネットワークの概要

RoCE はイーサネット経由で RDMA 機能を実装し、TCP/IP をバイパスしてハードウェアを使用できます。 offロードすることで、CPU 使用率が削減されます。 RoCE には、RoCEv1 と RoCEv2 の 1 つの主要なバージョンがあります。 RoCEv2 は、イーサネット リンク層上に実装される RDMA プロトコルです。 スイッチは、物理層で信頼性の高い伝送を確保するために、PFC などのフロー制御技術をサポートする必要があります。 RoCEvXNUMX は、イーサネット TCP/IP プロトコルの UDP 層上に実装され、スケーラビリティの問題を解決するために IP プロトコルを導入します。

RoCEv2 は、レイヤー 3 イーサネット ネットワーク上の RDMA ルーティングをサポートします。 RoCEv2 は、InfiniBand ネットワーク層をイーサネット リンク層上の IP および UDP ヘッダーに置き換えます。これにより、IP に基づいて従来のルーター間で RoCE をルーティングできるようになります。

InfiniBand ネットワークは、ある程度 SM (サブネット マネージャー) を使用して集中管理されたネットワークですが、RoCEv2 ネットワークは、RoCEv1 をサポートする NIC とスイッチで構成される純粋な分散ネットワークであり、通常は XNUMX 層アーキテクチャを採用しています。

RoCE ネットワーク アーキテクチャの図

RoCE ネットワーク カードの主なサプライヤーは、NVIDIA、Intel、Broadcom などです。PCIe カードは、データセンター サーバー用のネットワーク カードの主な形式です。 ポート PHY 速度 RDMA カードは通常 50 Gbps から始まり、現在入手可能な商用ネットワーク カードは単一ポート速度で最大 400 Gbps を達成できます。

RoCEネットワークカード

現在、ほとんどのデータセンター スイッチは RDMA フロー制御テクノロジーをサポートしており、RoCE をサポートするネットワーク カードと組み合わせることでエンドツーエンドの RDMA 通信を実現できます。 データセンター スイッチの主要企業には、Cisco、HPE、Arista などが含まれます。高性能スイッチの中核は、それらが使用する転送チップです。 現在市場にある Broadcom の Tomahawk シリーズ チップは、商用転送チップとして広く使用されています。 その中で、Tomahawk3 シリーズ チップはスイッチでより一般的に使用されており、Tomahawk4 シリーズ チップをサポートするスイッチが市場で徐々に増加しています。

イーサネット転送チップの進化

インフィニバンド対RoCE

InfiniBand と比較して、RoCE は汎用性が高く、コストが比較的低くなります。 高性能 RDMA ネットワークの構築だけでなく、従来のイーサネットにも使用できます。 ただし、スイッチ上でのヘッドルーム、PFC (優先順位ベースのフロー制御)、ECN (明示的輻輳通知) などのパラメータの設定は複雑になる場合があります。 大規模な導入では、RoCE ネットワークの全体的なスループット パフォーマンスが InfiniBand ネットワークよりもわずかに低くなる可能性があります。

IB 対 RoCE
  • 技術的な観点から見ると、InfiniBand はさまざまなテクノロジーを採用して、ネットワーク転送パフォーマンスの向上、障害回復時間の短縮、拡張性の強化、運用の複雑さの軽減を実現します。
  • ビジネス パフォーマンスの点では、InfiniBand は RoCEv2 よりもエンドツーエンドの遅延が低いため、InfiniBand 上に構築されたネットワークはアプリケーション レベルのビジネス パフォーマンスにおいて有利です。
  • 帯域幅と遅延の点では、輻輳やルーティングなどの要因が高性能ネットワーク相互接続に影響を与えます。

混雑

InfiniBand は、XNUMX つの異なるフレーム リレー メッセージを使用して輻輳を制御します。それは、前方明示的輻輳通知 (FECN) と後方明示的輻輳通知 (BECN) です。 ネットワークが混雑している場合、FECN は受信デバイスに通知し、BECN は送信デバイスに通知します。 InfiniBand は、FECN と BECN を適応マーキング レートと組み合わせて、輻輳を軽減します。 大まかな輻輳制御を提供します。

RoCE の輻輳制御では、明示的輻輳通知 (ECN) を使用します。これは、パケットをドロップせずにエンドポイント ネットワークの輻輳通知を可能にする IP および TCP の拡張機能です。 ECN は IP ヘッダーにマークを付けて、送信者に輻輳が発生していることを伝えます。 非 ECN 輻輳通信の場合、失われたパケットを再送信する必要があります。 ECN は、TCP 接続の輻輳によって引き起こされるパケット損失を軽減し、再送信を回避します。 再送信が少なくなると、遅延とジッターが減少し、トランザクションとスループットのパフォーマンスが向上します。 ECN は、粗粒度の輻輳制御も提供しますが、InfiniBand に比べて明らかな利点はありません。

ルーティング

ネットワーク内で輻輳が発生した場合、適応ルーティングによってデバイスが代替ルートに送信され、輻輳が緩和され、伝送速度が向上します。 RoCE v2 は IP 上で実行されます。 IP は高度なルーティング アルゴリズムによって数十年にわたってルーティング可能でしたが、現在では AI 機械学習によって混雑したルートを予測し、より高速なルートを通じてパケットを自動的に送信できるようになりました。 ルーティングの点では、イーサネットと RoCE v2 には大きな利点があります。

ただし、InfiniBand と RoCE はテール レイテンシーにあまり対処しません。 テール レイテンシーは、HPC メッセージ アプリケーションの同期にとって非常に重要です。

UEC は新しいトランスポート プロトコルを定義する計画

に加えて RoCE など、他のプロトコルも業界によって提案されています。

19 月 XNUMX 日、ウルトラ イーサネット コンソーシアム (UEC) が設立されました。 off無事に確立されました。 UEC の目標は、既存のイーサネット機能を超え、高性能コンピューティングと人工知能向けに最適化された、高性能、分散型、ロスレスのトランスポート層を提供することです。 UEC の創設メンバーには、AMD、Arista、Broadcom、Cisco、Eviden、HPE、Intel、Meta、Microsoft が含まれており、その全員がネットワーキング、人工知能、クラウド、および大規模なハイ パフォーマンス コンピューティングの導入において数十年の経験を持っています。

設立メンバー

UEC は、要求の厳しい AI/ML ネットワーク トラフィックにおいては、数十年前に定義された RDMA は時代遅れであると考えています。 RDMA は、大きなトラフィック ブロックでデータを転送するため、リンクの不均衡や過負荷が発生する可能性があります。 新しいアプリケーション向けに RDMA をサポートする最新のトランスポート プロトコルの構築を開始する時期が来ています。

UEC トランスポート プロトコルは、イーサネット/IP の利点を維持し、AI および HPC アプリケーションに必要なパフォーマンスを提供しながら、現在の RDMA (まだ RDMA をサポート) よりも優れたイーサネット トランスポートを提供することを目的として開発中であると報告されています。 UEC トランスポートは、セマンティック調整、輻輳通知プロトコル、強化されたセキュリティ機能を備えた新しい形式のニア トランスポート層です。 UEC は、ロスレス ネットワークを必要としない、より柔軟なトランスポートを提供し、多対多の人工知能ワークロードがマルチパスやアウトオブオーダーのパケット送信やその他の機能を必要とすることを可能にします。

さらなるエンタープライズパワー

HPC/AI ネットワークが進化し続けるにつれて、特定のニーズを満たすために独自のネットワーク プロトコルやソリューションを立ち上げる企業が増えています。

Tencent Cloud は、Starlink ネットワークで自社開発の Starlink RDMA ネットワークを使用しています。これにより、GPU が相互に直接通信できるようになり、CPU リソースが節約され、コンピューティング ノードの全体的なパフォーマンスと効率が向上します。 自社開発のエンドツーエンド協調プロトコル TiTa を通じて、Starlink ネットワークは 90% のロード 0 パケット損失を達成できます。 TiTa プロトコルには輻輳制御アルゴリズムが組み込まれており、ネットワークの状態をリアルタイムで監視して通信を最適化し、データ送信をよりスムーズにし、遅延を低くします。

Alibaba Cloud Panjiu PredFabric は、自社開発した Solar-RDMA 高速ネットワーク プロトコルを使用します。これにより、プロセッサは、ロード/ストア命令を通じて他のサーバーのメモリにアクセスできます。これは、深層学習モデル内のニューラル ネットワークの対話型形式に非常に適しています。 。 従来のモードと比較して、障害の自己修復時間とテール遅延を 90% 削減できます。

ファーウェイのハイパーコンバージドデータセンターネットワークは、独自のiLosslessインテリジェントロスレスアルゴリズムを採用しており、トラフィック制御技術、輻輳制御技術、インテリジェントロスレスストレージネットワーク技術のXNUMXつの主要技術と連携して、PFCデッドロックの発生を事前に防止し、輻輳を緩和/解放します。ホストの高速制御を実現することで、ロスレス イーサネット ネットワークを構築し、従来のイーサネット ネットワークにおける輻輳パケット損失の問題を解決します。

市場の需要の増大は、技術開発の基本的な原動力です。 IDC のデータによると、AI インフラストラクチャの構築投資は 154 年に 2023 億米ドルに達し、300 年までに 2026 億米ドルに増加すると予想されています。2022 年の AI ネットワーク市場は 2 億米ドルに達し、そのうち InfiniBand が収益の 75% に貢献しました。 。

InfiniBand と RoCE を比較すると、どちらにも独自の利点とアプリケーション シナリオがあることがわかります。 InfiniBand はハイパフォーマンス コンピューティングの分野で優れたパフォーマンスを発揮し、優れたパフォーマンス、低遅延、およびスケーラビリティを提供します。 RoCE は既存のイーサネット インフラストラクチャに簡単に統合でき、コストも低くなります。 UEC に代表される新たなトランスポート プロトコルは、技術の継続的な開発と革新も表しています。 変化するニーズに適応することによってのみ、当社は核となる競争力を維持することができます。

コメント

上へスクロール