Alインテリジェントコンピューティングセンターのネットワークアーキテクチャ設計実践

<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">従来のクラウド設定用のデータセンターネットワークは、通常、外部クライアントのニーズを優先するトラフィックパターンを念頭に置いて設計されています。この方向により、データセンターからエンドユーザーに向かうデータフローが主流になり、この方向の移動はしばしば南北トラフィックと呼ばれます。対照的に、クラウド内を横方向に移動するトラフィック（東西方向と呼ばれる）は、このモデルでは後回しにされます。それにもかかわらず、仮想プライベートクラウド（VPC）ネットワークを促進し、スマートコンピューティングタスクを支えるこの基本的なネットワークインフラストラクチャは、多くの困難に直面しています。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1"><img title="Al Intelligent Computing Center Network Architecture-1" src="https://media.fs.com/images/community/erp/tSijM_6Hrnh5.jpg" alt="Al Intelligent Computing Center Network Architecture-1" width="100%" /></p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">ネットワークの輻輳：すべてのサーバーが同時にアウトバウンド・トラフィックを生成するわけではありません。ネットワーク構築コストを抑制するため、リーフスイッチのダウンリンクポートとアップリンクポートの帯域幅は1対1ではなく、収束比で設計されています。一般的に、アップリンクの帯域幅はダウンリンクの帯域幅の3分の1程度です。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">内部クラウドトラフィックの遅延が大きい：異なるリーフスイッチをまたぐ2つのサーバー間の通信では、スパインスイッチを経由する必要があり、その結果、転送経路が3ホップになるため、さらに遅延が発生します。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">帯域幅の制限：ほとんどの場合、1台の物理マシンにはVPCネットワークに接続するためのネットワークインターフェースカード（NIC）が1枚しか搭載されていません。単一のNICの帯域幅は比較的限られており、現在市販されているNICは通常200Gbpsを超えません。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">インテリジェントコンピューティングのシナリオでは、インテリジェントコンピューティングのワークロードに対応するために、高帯域幅、低遅延、ロスレスという要件を満たす専用の高性能ネットワークを構築することが推奨されます。</p>
<h2 class="community-restructure-h2 community_page_first_h2">高帯域幅設計</h2>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">インテリジェントコンピューティングサーバーは、8枚のGPPUカードをフル装備でき、8つのPCIeネットワークカードスロットが確保されています。複数のマシンにまたがってGPUクラスタを構築する場合、2つのGPU間の通信のバースト帯域幅が50Gbpsを超えることがあります。そのため、各GPUに少なくとも100Gbpsのネットワークポートを関連付けるのが一般的です。このシナリオでは、各容量が2100Gbpsのネットワークカードを4枚、または各容量が1100Gbpsのネットワークカードを8枚構成することができます。或いは、200/400Gbpsの単一ポート容量を持つネットワークカード8枚を構成することもできます。</p>
<p><img title="Al Intelligent Computing Center Network Architecture-2" src="https://media.fs.com/images/community/erp/P7h87_7TJPnC.jpg" alt="Al Intelligent Computing Center Network Architecture-2" width="100%" /></p>
<h2 class="community-restructure-h2 community_page_first_h2">ブロックのない設計</h2>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">アンブロッキング・ネットワークデザインの鍵は、Fat-Treeアーキテクチャを採用することです。スイッチのダウンリンクとアップリンクの帯域幅は、1:1の非整合設計に従います。例えば、ダウンリンクにそれぞれ100Gbpsの帯域幅を持つポートが64個あれば、アップリンクにもそれぞれ100Gbpsの帯域幅を持つポートが64個存在します。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">さらに、ノンブロッキング転送機能を備えたデータセンターグレードのスイッチを使用する必要があります。市場で入手可能な主流のデータセンタースイッチは、一般にフルポートのノンブロッキング転送機能を備えています。</p>
<h2 class="community-restructure-h2 community_page_first_h2">低遅延設計：Al-Pool</h2>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">低遅延ネットワーク・アーキテクチャ設計の観点から、Baidu Intelligent CloudはRail最適化に基づくAl-Poolネットワーク・ソリューションを実装、展開しています。このネットワークソリューションでは、8台のアクセススイッチがAA-Poolグループを形成しています。2レイヤースイッチネットワークアーキテクチャを例にとると、このネットワークアーキテクチャは、同じAl-Pool内の異なるインテリジェントコンピューティングノード間のワンホップ通信を実現します。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">例えば、インテリジェント・コンピューティング・ノード1のRDMAポート1、インテリジェント・コンピューティング・ノード2のRDMAAポート1など、インテリジェント・コンピューティング・ノードP/2のRDIMAポート1までは、すべてスイッチに接続する必要があります。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">各インテリジェントコンピューティングノード内では、上位層の通信ライブラリが、ノード上のネットワークトポロジーに基づいて、GPUカードと対応するネットワークポートを照合します。これにより、同じGPUカード番号を持つ2つのインテリジェント・コンピューティング・ノード間で、1ホップのみの直接通信が可能になります。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">GPUカード番号が異なるインテリジェントコンピューティングノード間の通信では、NCCL通信ライブラリのRail Localテクノロジが、ホスト内のGPUS間のNVSwitchの帯域幅をフルに活用し、複数のマシン間のクロスカード通信を、マシンをまたいだ同じGPUカード番号間の通信に変換することができます。</p>
<p><img title="Al Intelligent Computing Center Network Architecture-3" src="https://media.fs.com/images/community/erp/Z7GRZ_1kfJEx.jpg" alt="Al Intelligent Computing Center Network Architecture-3" width="100%" /></p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">Al-PocIを介した2つの物理マシン間の通信では、アグリゲーション・スイッチを経由する必要があり、結果として3ホップ通信となります。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">ネットワークがサポートできるGPUのスケーラビリティは、使用するスイッチのポート密度とネットワークアーキテクチャに関連します。ネットワークの階層化が進むにつれて、より多くの GPU カードに対応できますが、転送のホップ数とレイテンシも増加します。したがって、実際のビジネス要件に基づいてトレードオフを行う必要があります。</p>
<h2 class="community-restructure-h2 community_page_first_h2">2レベルのファットツリーアーキテクチャ</h2>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">8台のアクセススイッチが、Al-Poolと呼ばれるインテリジェントなコンピューティング・リソース・プールを形成します。図中、Pは1台のスイッチのポート数を表します。各スイッチは最大P/2個のダウンリンクポートとP/2個のアップリンクポートを持つことができ、1台のスイッチで最大P/2台のサーバとP/2台のスイッチに接続できることになります。2レベルのFat-Treeネットワークは、合計P*P/2枚のGIPUカードを収容できます。</p>
<h2 class="community-restructure-h2 community_page_first_h2">3レベルのファットツリーアーキテクチャ</h2>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">3レベルのネットワークアーキテクチャでは、さらにアグリゲーションスイッチグループとコアスイッチグループがあります。各グループの最大スイッチ数はP/2です。アグリゲーションスイッチグループの最大数は8、コアスイッチグループの最大数はP/2です。3レベルFat-Treeネットワークは、合計P*(P/2)(P/2) = PP*P/4 GPUカードを収容できます。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">3レベルFat-Treeネットワークの場合、InfiniBand 40ポート200Gbps HDRスイッチは最大16,000GPUSに対応できます。この16,000 GPUカードという規模は、現在中国でInfiniBandを使用したGPUクラスタとしては最大規模のネットワークであり、Baiduが現在の記録を保持しています。</p>
<p><img title="Al Intelligent Computing Center Network Architecture-4" src="https://media.fs.com/images/community/erp/DPF7y_2sGAdX.jpg" alt="Al Intelligent Computing Center Network Architecture-4" width="100%" /></p>
<h2 class="community-restructure-h2 community_page_first_h2">2レベルと3レベルのファットツリーネットワークアーキテクチャの比較</h2>
<h3 class="community-restructure-h3">収容可能なGPUカードの規模</h3>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">2レベルファットツリーと3レベルファットツリーの最も大きな違いは、GPUカードの収容能力にあります。下図で、NはGPUカードの規模、Pは1台のスイッチのポート数を表しています。例えば、40ポートのスイッチの場合、2層Fat-Treeアーキテクチャは800枚のGPUカードを収容でき、3層Fat-Treeアーキテクチャは16,000枚のGPUカードを収容できます。</p>
<p><img title="Al Intelligent Computing Center Network Architecture-5" src="https://media.fs.com/images/community/erp/CZE3w_5fTXAn.jpg" alt="Al Intelligent Computing Center Network Architecture-5" width="100%" /></p>
<h3 class="community-restructure-h3">転送パス</h3>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">2レベルFat-Treeネットワークアーキテクチャと3レベルFat-Treeネットワークアーキテクチャのもう1つの違いは、2つのノード間のネットワーク転送パスのホップ数です。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">2レベルFat-Treeアーキテクチャでは、同じインテリジェント・コンピューティング・リソース・プール（Al-Pool）内で、同じGPUカード番号を持つノード間の転送パスは1ホップです。異なるGPUカード番号を持つノード間の転送パスは、インテリジェント・コンピューティング・ノード内でRail Local最適化を行わない場合、3ホップとなります。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">3レベルFat-Treeアーキテクチャでは、同じインテリジェント・コンピューティング・リソース・プール（AI-Pool）内で、同じGPUカード番号を持つノード間の転送パスは3ホップです。異なるGPUカード番号を持つノード間の転送パスは、インテリジェント・コンピューティング・ノード内でRail Local最適化を行わない場合、5ホップとなります。</p>
<p><img title="Al Intelligent Computing Center Network Architecture-6" src="https://media.fs.com/images/community/erp/23GrE_4rjKYJ.jpg" alt="Al Intelligent Computing Center Network Architecture-6" width="100%" /></p>
<p> </p>
<h2 class="community-restructure-h2 community_page_first_h2">AI HPCネットワークアーキテクチャの典型例</h2>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">現在成熟している商用スイッチに基づき、InfiniBand/RoCEスイッチのさまざまなモデルとGPUSのサポート規模を考慮して、物理ネットワークアーキテクチャのいくつかの仕様を推奨します。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">通常：InfiniBand HDRスイッチをベースとしたInfiniBand 2層Fat-Treeネットワーク・アーキテクチャ、1クラスタで最大800GPUカードをサポートします。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">Large：128ポートの100GデータセンターイーサネットスイッチをベースとしたRoCE 2層Fat-Treeネットワークアーキテクチャで、1クラスタで最大8192枚のGPUカードをサポートします。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">XLarge：InfiniBand HDRスイッチをベースとしたInfiniBand 3層Fat-Treeネットワークアーキテクチャで、単一クラスタ内で最大16,000枚のGPUカードをサポートします。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">XXLarge：InfiniBand Quantum-2スイッチまたは同等性能のイーサネットデータセンタースイッチをベースとし、3層Fat-Treeネットワークアーキテクチャを採用、単一クラスタで最大100,000枚のGPUカードをサポートします。</p>
<p><img title="Al Intelligent Computing Center Network Architecture-7" src="https://media.fs.com/images/community/erp/A6Qh3_3DtzD5.jpg" alt="Al Intelligent Computing Center Network Architecture-7" width="100%" /></p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">同時に、効率的なデータ伝送と処理のためには、高速ネットワーク接続が不可欠です。</p>
<p class="blog_p padding_top_none community_blog_detail_p community_blog_detail_p1">FSは、AIモデルのネットワーク展開の要件を満たす高品質な接続製品を提供します。FSの製品ラインナップには、（200G、400G）InfiniBandスイッチ、データセンタースイッチ（10G、40G、100G、400G）ネットワークカード、（10/25G、40G、50/56G、100G）光モジュールが含まれており、AIモデルのトレーニングと推論プロセスを加速できます。光モジュールは、高帯域幅、低遅延、低エラーレートを提供し、データセンターネットワークの機能を強化し、より高速で効率的なA-コンピューティングを可能にします。FSの接続製品を選択することで、ネットワーク性能を最適化し、大規模なAIモデルの展開と運用をサポートすることができます。</p>