マイクロンはDellおよびNVIDIAのチームと提携し、AIトレーニングモデルのNVMeへのファイル移動に関する、業界を牽引する研究を行い、NVIDIA GTCグローバルAIカンファレンスで発表しました。マイクロンのデータセンターワークロードエンジニアリングチームは、DellのテクニカルマーケティングラボおよびNVIDIAのストレージソフトウェア開発チームの協力を得て、マイクロンの新規高性能Gen5 E3.S NVMe SSDを搭載したDell PowerEdge R7625サーバー内の、NVIDIA H100 テンサーコアGPUで、GPU-イニシエイテッドダイレクトストレージ(GIDS)を搭載したビッグアクセラレーターメモリ(BaM)をテストしました。
BaMとGIDSは、GitHubで利用可能なオープンソースコードを用いた、以下の論文に基づいた研究プロジェクトです。
- GPU-Initiated On-Demand High-Throughput Storage Access in the BaM System Architecture: https://arxiv.org/abs/2203.04910
- GitHub: https://github.com/ZaidQureshi/bam
メモリ増加としてのNVMe?
AIモデルのサイズは急速に拡大しており、大型モデルをトレーニングするデフォルトメソッドは、GPU上にできる限り多くのHBMを搭載し、できる限り多くのシステムDRAMを備えていなければなりません。モデルがHBM+DRAMに収まらない場合は、複数のNVIDIA GPUシステムを並列します。
複数のサーバーでトレーニングを並列するには、特にGPUユーティリゼーションおよび効率において多大なコストがかかります。データがネットワークとシステムリンクにフローしなければならず、それがボトルネックになりやすいからです。
NVMeを「スロー」メモリの第3階層として使用することで、複数のGPUシステムにAIトレーニングジョブを分割しなくても良いとしたらどうでしょうか? それがまさに、GIDS搭載BaMの役割なのです。NVMeドライバーを置き換えて合理化し、データと制御パスをGPUに送信します。どのようなパフォーマンスなのでしょうか?
ベースラインパフォーマンス結果
示されているすべてのテスト結果は、上記にリンクされているオープンソース BaM実装に含まれている、BaM Graph Neural Network(GNN)ベンチマークを使用して実行されました。
この最初のテストでは、GIDSを有効にしてBaMを使用した場合と使用しない場合で何が起こるかを示しています。Linux mmapの標準導入を使用し、CPUを介してストレージへのメモリ アクセスをフォールトし、特定のストレージ ソフトウェアのないテストケースを示しています。
mmapテストは、NVIDIA A100 80GB テンサーコアGPUおよびマイクロン9400 Gen4 NVMe SSDで19分を要しました。BaMとGIDSを配置した場合は42秒で、パフォーマンスは26倍に向上しました。このパフォーマンスの向上は、ストレージのパフォーマンスに依存するベンチマークの機能集約コンポーネントに見られます。
DellラボにおけるGen5のパフォーマンス
マイクロンはGTCで、新規Gen5 NVMe SSDがAI モデルのファイル移動にうまく機能することを証明したいと考えました。私たちはDellのテクニカルマーケティングラボと提携して、NVIDIA H100 80GB PCIe GPU (Gen5x16) を搭載したDell PowerEdge R7625サーバーにアクセスし、優れたサポートを得てテストを完了しました。
GNNワークロードのパフォーマンス | マイクロン Gen5 H100 | マイクロン Gen4 A100 | Gen5とGen4のパフォーマンスの比較 |
---|---|---|---|
特徴集約(NVMe) | 18秒 | 25秒 | 2倍 |
トレーニング(GPU) | 0.73秒 | 3.6秒 | 5倍 |
サンプリング | 3秒 | 4.6秒 | 1.5倍 |
エンドツーエンド時間 (機能集約の合計+トレーニング+サンプリング) |
22.4秒 | 43.2秒 | 2倍 |
GIDS + BaMアクセス/秒 | 2.87分 | 1.5分 | 2倍 |
機能集約はSSDのパフォーマンスによって異なります。その実行時間は総実行時間の80%であり、Gen4からGen5では2倍の改善が見られます。サンプリングとトレーニングはGPUに依存しており、NVIDIA A100からH100 テンサーコア GPUに移行すると、トレーニングパフォーマンスが5倍になることが分かります。このユースケースには高性能Gen5 SSDが必要とされ、マイクロンのGen5 SSDの生産前のバージョンが、Gen4のほぼ倍のパフォーマンスを示しています。
マイクロンのSSDにGIDS搭載BaMが与える影響は?
GIDS を使用した BaM は NVMe ドライバーを置き換えるため、IO指標(IOP、レイテンシーなど)を表示する標準 Linuxツールは機能しません。私たちは、GIDS GNN搭載BaMトレーニングワークロードを追跡し、驚くべき結果を得ました。
- GIDS搭載BaMは、ドライブのほぼ最大IOパフォーマンスを実現するのです。
- GNNトレーニングに対するIOプロファイルは、99%スモールブロック読み取りです。
- SSDのキュー深度は、CPU上の「通常の」データセンターのワークロードから予想される深度の10~100倍です。
これはNVMeパフォーマンスの上限をさらに上げる、斬新なワークロードです。GPUは複数の並行ストリームを管理でき、GIDS搭載BaMはレイテンシーを管理・最適化し、CPU上で実行することすら不可能なワークロードプロファイルを作成します。
まとめ
AI業界が進化するにつれ、GPUシステムのユーティリゼーションと効率に関する知的ソリューションはますます重要となっています。GIDS搭載BaMのようなソフトウェアは、より大規模なAI問題セットを解決するためのより良い方法を提供することで、AIシステムリソースの効率化を可能にします。モデル ストレージをNVMeに拡張するとトレーニング時間に影響が出ますが、このトレードオフにより、時間に依存しない大規模なトレーニングジョブをより少ないGPUシステムで実行できるようになり、ひいては配備したAIハードウェアの効率とTCOが向上します。
このデータは、以下のNVIDIA GTCセッションで使用されました。
大規模データセットに対するGPUアクセスの加速とセキュアリング [S62559]
この研究を可能にした、以下のマイクロン、Dell、NVIDIAのご担当者に心より感謝申し上げます。
- マイクロン:John Mazzie、Jeff Armstrong
- Dell:Seamus Jones、Jeremy Johnson、Mohan Rokkam
- NVIDIA:Vikram Sharma Mailthody、CJ Newburn、Brian Park、Zaid Qureshi、Wen-Mei Hwu
ハードウェアおよびソフトウェアの詳細:
- ワークロード:IGBHフルトレーニングを伴うGIDS。
- NVMeパフォーマンス結果はマイクロンのデータセンターワークロードエンジニアリングチームが測定し、ベースライン(mmap)パフォーマンス結果はNVIDIAのストレージソフトウェアチームが同様のシステムで測定しました。
- テストの対象となったシステム:
- Gen4: 2x AMD EPYC 7713、64-core、1TB DDR4、マイクロン9400 PRO 8TB、NVIDIA A100-80GB GPU、Ubuntu 20.04 LTS (5.4.0-144)、NVIDIAドライバー535.129.03、CUDA 12.3、DGL 2.0.0
- Gen5:Dell R7625、2x AMD EPYC 9274F, 24-core、1TB DDR5、マイクロン Gen5 SSD、NVIDIA H100-80GB GPU、Ubuntu 20.04 LTS (5.4.0-144)、NVIDIAドライバー535.129.03、CUDA 12.3、DGL 2.0.0
- 研究は論文「GPU-Initiated On-Demand High-Throughput Storage Access in the BaM System Architecture」に基づいています。https://arxiv.org/abs/2203.04910, https://github.com/ZaidQureshi/bam