Supermicro NVIDIA、AIやMLなどに最適化されたシステムを提供
現代の企業は、ビジネスや業務において高度なアプリケーションやデータ処理を使用することで、かなりの競争優位性を獲得しています。これには、ChatGPT、LLaMaなどのAIベースの大規模言語モデル、膨大な学習データと実データに基づく機械学習分析、複雑な3Dモデルや有限要素モデル、シミュレーション、その他のデータおよび計算集約型アプリケーションなどが含まれます。
このようなワークロードには、少なくともこれだけの共通点があります。それは、どのような階層モデルであっても、ストレージへの迅速なアクセスから大きな恩恵を受けるということです。これが、多くの企業やサービスプロバイダが、大規模で複雑なデータセットとそれを消費するワークロードを処理するためにGPUベースのサーバを採用した主な理由の1つです。GPUサーバーは、一般的なストレージ構成(ローカルRAMとNVMe SSD、LANまたはクラウド上の追加ストレージ階層など)を備えた従来のサーバーよりも、ワークロードを処理する能力がはるかに高く、そのようなタスクをより迅速に完了できます。
スループットを向上させる秘訣は、レイテンシの低減とストレージ帯域幅の改善です。これらは、次に説明するように、主に直接およびリモート・メモリ・アクセスに依存する巧みなIOとネットワーキング技術によって、生産性と能力の向上に直結します。モデルのトレーニングとジョブの完了が高速化されることで、AIを活用したアプリケーションをより迅速に展開し、物事をより早く完了させ、価値実現までの時間を短縮することができます。
ダイレクトメモリアクセスとリモート同等品
ダイレクトメモリアクセス(別名DMA)は、コンピューティングの黎明期からIOを高速化するために使用されてきました。基本的にDMAは、あるデバイスから別のデバイスへ、バス(または何らかの別のインターフェース)を介してメモリからメモリへの転送を行います。DMAは、メモリアドレスの範囲を送信側のメモリから受信側のメモリに直接コピーすることで機能します(双方向転送の場合は2者間)。この機能により、CPUはプロセスから離れ、コピー操作の回数を減らすことで転送を高速化します(CPUは送信者のデータをメモリにコピーし、そのデータをメモリから受信者のメモリにコピーする必要がありません)。
実際、単一システムでの DMA 性能は、データ転送に関与する送受信デバイスを結ぶバス(またはその他のインターフェイス)の速度によってのみ制限されます。PCIe 4.0では16ギガ転送/秒(GT/秒)、PCIe 5.0ではその2倍(32GT/秒)です。エンコードとパッケージングのオーバーヘッドがあるため、データ転送速度は当然遅くなりますが、これら2つのPCIeバージョンの定格帯域幅はそれぞれ64Gbps(4.0)と128Gbps(5.0)です。これは高速です!
リモートDMA(別名RDMA)は、1台のコンピュータ内のDMA機能を拡張し、ネットワーク接続を介して2台のデバイス間で動作するようにしたものです。RDMAは通常、独自のアプリケーションプログラミングインタフェース(API)に基づいており、特殊なネットワークハードウェアやソフトウェアと連携して、基礎となるネットワーク技術が許す限り、ローカルDMAと同じメリットを提供します。
NVIDIA GPUは、このような3つのネットワーク技術をサポートしています:
- NVIDIA NVLinkは、高速ネットワーク上のGPU間のデータ転送を高速化するために、最高速の独自インターフェースとスイッチ技術を使用しています。現在、標準的なMLPerf Training v3.0ベンチマークにおいて、あらゆるテクノロジーで最高のパフォーマンスを記録しています。単一のNVIDIA H100 Tensor Core GPUは、最大18個のNVLink接続をサポートし、最大900 Gbps (PCIe 5.0の実効速度の7倍)を実現します。
- InfiniBandは、InfiniBand Trade Association(IBTA)が統括する高速ネットワーク規格で、高性能ネットワークに広く導入されています。2020年現在、最高データレートは約1.2Tbps(~154GBps)。
- イーサネットは標準的なネットワーキング・テクノロジーで、めったに使われないTbE(~125GBps)や、より一般的な400GbE(50GBps)など、多くのバリエーションがあります。イーサネットは、手頃な価格で広く普及しており、多くのデータセンターでおなじみの技術であるという利点があります。
NVIDIAのGPUをSupermicro サーバーで活用
NVIDIA RDMA技術は、前述の3つのネットワーク技術すべてにおいてGPUベースのデータアクセスをサポートすることができます。それぞれが異なる価格と性能のトレードオフを提供し、より多くのコストがより高速でより低いレイテンシを実現します。組織は、各オプションが信頼できる価格と性能の特定の組み合わせであることを理解した上で、予算とニーズに最も適した基礎となる接続タイプを選択できます。さまざまなAIやMLベースの(およびその他のデータや計算を多用する)アプリケーションがこのようなサーバー上で実行されるため、GPUストレージの階層型アーキテクチャを利用することができます:
- 第1層:GPUメモリは、最も高速で、最も高価で、最も小さいデータストアです(例えば、Tensor H100 GPUには188GBのHBM3 RAMがあります)。
- 第2層:PCIeバス上のローカルSSDは、次に高速で、まだ高価ですが、ハイエンドGPUの10倍から100倍の容量があります。
- 第3層:LAN上のリモートストレージサーバーは、アクセスするGPUの1,000倍以上の容量をサポート可能
AIおよびMLアプリケーションは低レイテンシーと高帯域幅の両方を必要とするため、RDMAはDMAのローカルな利点をネットワークリソースに拡張するのに役立ちます(関係する基礎的な接続が条件となります)。この機能により、デバイス間(一方はGPU、もう一方はストレージデバイス)のメモリ間転送を介した外部データへの高速アクセスが可能になります。NVLink、InfiniBand、またはいくつかの高速イーサネットを使用して、リモートアダプタはリモートシステムのメモリからローカルGPUのメモリにデータを転送します。NVIDIA Magnum IOは、データセンターにIOアクセラレーションプラットフォームを提供し、並列でインテリジェントなデータセンターIOをサポートします。
GPUサーバシステムにおいて、Supermicro NVIDIA GPUとそれをサポートするアクセス方法を使用しています。これらには、ローカルDMA、API経由のRDMA、さらに3つの接続タイプすべてをサポートする複数のNICとスイッチ経由の高性能ネットワーキングが含まれます。さらに、Supermicro GPUサーバーには、データ処理ユニット(DPU)と呼ばれる特殊用途のASICが1つまたは2つ含まれており、GPUが提供する高速IOをサポートします。これらは、サーバCPUから追加のIOオーバーヘッドをオフロードします。同様に、このようなサーバは、PCIe 5.0デバイスとRDMAデバイス間の転送を最大化するために、ネットワーク帯域幅への持続的かつ拡張的なアクセスを可能にするために、サーバごとに最大8つのネットワークアダプタをサポートすることができます。これにより、PCIeバス上でもボトルネックが発生せず、スループットの最大化とレイテンシの最小化を実現します。
パフォーマンスへの影響は非常にポジティブです。NVIDIAのアクセラレーテッドIOを使用することによるパフォーマンスの向上は、わずか20%から30%から、集中的なワークロードでは最大2倍まで及びます。非効率を防ぐために、ストレージを活用するアプリケーションを設計することも不可欠です。そのため、このようなアプリケーションは定期的にチェックポイントを行うように設定する必要があります。そうでなければ、ノードがネットワークから外れたり、しばらくの間ブロックされたりした場合に、初期状態から再スタートしなければなりません。チェックポイントを使用するということは、ノードの障害やその他のブロックイベントが発生した場合に、進捗が最新のスナップショットに戻るだけということを意味します(このような機能は、ローカルやネットワークのデータ保護ツールから利用できる可能性があり、実際にはアプリケーションに特別に組み込む必要はないかもしれません)。
全体として、AIやML、その他の高負荷ワークロード(3Dモデルや有限要素モデル、シミュレーションなど)にDPUやGPUベースのサーバを使用する本当の利点は、インフラストラクチャのコンポーネントをアプリケーションのアクティビティから分離できることです。これにより、現在インフラへのアクセスと管理に割かれているCPUサイクルの20%から30%を節約できます。これにより、リソースが解放され、IO機能をハードウェアにプッシュすることでアクセスが高速化されます。