VMware の Uday Kurkure 氏はThe Registerに対し、高性能コンピューティングの将来は仮想化されると語った。
VMwareのパフォーマンスエンジニアリングチームのリードエンジニアであるクルクル氏は、過去5年間、アクセラレータ上で実行される機械学習ワークロードを仮想化する方法に取り組んできました。今月初め、彼のチームは、NVIDIAのNVLinkインターコネクトを介して接続された仮想GPU(vGPU)上で実行される、人気の機械学習ワークロードであるBERT(Bidirectional Encoder Representations from Transformers)とMask R-CNNにおいて、「ベアメタルに近い、あるいはそれ以上のパフォーマンス」を達成したと報告しました。
NVLinkは、レーンあたり6.25GB/秒(PCIe 4.0の2.5GB/秒に対して)の高帯域幅メッシュファブリックを介して、最大4つのGPU間でコンピューティングリソースとメモリリソースを共有できるようにします。この相互接続により、Kurkure氏のチームは、Dell PowerEdgeシステムに搭載された4つの40GB NVIDIA A100 SXM GPUから160GBのGPUメモリをプールすることができました。
「機械学習モデルがどんどん大きくなると、1つのチップのグラフィックメモリに収まらなくなるため、複数のGPUを使用する必要があります」と彼は説明した。
VMware vSphereにおけるNVLinkのサポートは比較的新しい追加機能です。Kurkureは、テスト間でvSphereのNVLinkのオン/オフを切り替えることで、相互接続がパフォーマンスにどの程度影響を与えるかを判断することができました。
そして、誰にとっても驚くことではないが、NVLink を有効にすると、大規模な ML ワークロードの実行速度が向上し、GPU の追加に応じて直線的に拡張されました。
テストの結果、Mask R-CNNのトレーニングは、ツインGPUとNVLink構成で15%高速化し、4基のA100すべてを使用した場合は18%高速化しました。BERT自然言語処理モデルでは、パフォーマンスの差はさらに大きく、NVLink対応システムは4基のGPUすべてを使用した場合、243%高速化しました。
さらに、Kurkure 氏によれば、仮想化された GPU は、ベアメタル上で同じワークロードを実行した場合と同等かそれ以上のパフォーマンスを達成できたという。
「vSphere で NVLink がサポートされるようになったことで、顧客は NVLink を使用して同じホスト上で複数の GPU を組み合わせることができる柔軟性が得られ、大きな通信オーバーヘッドなしで、より大きなモデルをサポートできるようになります」と Kurkure 氏は述べています。
HPC、エンタープライズへの影響
これらのテスト結果に基づき、クルクル氏は、今後ほとんどのHPCワークロードが仮想化されると予想しています。HPCコミュニティは常にパフォーマンスのボトルネックに直面しており、その結果、システムが十分に活用されていないとクルクル氏は付け加え、仮想化によってユーザーはシステムをより効率的に活用できるようになると主張しました。
Kurkure 氏のチームは、デュアル ソケット システムの CPU リソースのほんの一部を使用しながら、ベア メタルに匹敵するパフォーマンスを達成することができました。
「利用可能な128個の論理コアのうち、16個しか使用していませんでした」と彼は述べた。「機械学習を多用するグラフィックモジュールに影響を与えることなく、そのCPUリソースを他のジョブに活用できます。これにより、CPU利用率が向上し、データセンターのコスト削減につながります。」
ブロードコム、VMwareを「木曜日に600億ドルで」買収へ
続きを読む
GPU 間で NVLink のオン/オフを切り替えることで、複数の分離された AI/ML ワークロードを GPU 全体に同時に分散できるようになり、プラットフォームの柔軟性が向上します。
「このテストで得られた重要なポイントの 1 つは、NVLink メッシュ ネットワーク経由で接続された vGPU によって利用率が向上したため、VMware はベアメタルのようなパフォーマンスを実現しながら、アイドル状態のリソースを他のワークロードに解放できたことです」と Kurkure 氏は述べています。
VMWareは、これらの結果により、投資銀行業務、製薬研究、3D CAD、自動車製造など、複数のアプリケーションにおけるリソース利用率が向上すると期待しています。Kurkure氏によると、3D CADはHPC仮想化の需要が特に高い分野であり、設計プロセスを支援するために機械学習の実装を検討している顧客が複数いるとのことです。
これらのワークロードの多くをクラウド内の GPU で実行することは可能だが、コストや知的財産の規則によりそれが不可能になる可能性があると彼は主張した。
vGPU と MIG
重要な点として、VMware のテストは、A100 のマルチインスタンス GPU (MIG) が提供するハードウェアレベルのパーティショニングではなく、vSphere の Nvidia vGPU Manager を使用して実施された点が挙げられます。MIG は基本的に、A100 を最大 7 基の低性能 GPU のように動作させることを可能にします。
これに対し、vGPUはハイパーバイザー内で定義され、タイムスライスされます。これは、GPUが各vGPUワークロードを高速に循環処理し、完了するまで実行するマルチタスクと考えることができます。
vGPUの利点は、急速なコンテキスト切り替えに伴う潜在的なオーバーヘッドを犠牲にすれば、ユーザーが7つのGPUインスタンスをはるかに超えるスケールアップが可能なことだとKurkure氏は説明した。しかし、少なくとも彼のテストでは、GPUをVMにパススルーしてベアメタルで実行する場合と比較して、vGPUの使用はパフォーマンスに悪影響を与えなかったようだ。
MIGがこの状況を変えるかどうかはまだ不明であり、クルクル氏のチームによる継続的な調査の対象となっている。「vGPUを使うべき時とMIGモードで実行すべき時が明確ではありません」とクルクル氏は述べた。
今後も続く
スケールアップワークロード向けにNVLink搭載vGPUが検証されたことを受け、VMwareは現在、これらのワークロードをRDMA over Converged Ethernet(RoCE)経由で複数のシステムやラックにスケールさせる方法など、様々な選択肢を検討しています。ここでネットワークが重要な考慮事項になると同氏は言います。
「この自然な流れはスケールアウトです」と彼は言った。「つまり、RoCEで接続されたホストが複数存在することになります。」
VMwareは、仮想化されたGPUがさらに大規模なAI/MLモデルでどのように機能するかについても研究しています。
Kurkure 氏のチームは、これらのアーキテクチャが GPT-3 のようなさらに大規模な AI/ML でどのように拡張されるか、またエッジで実行される通信ワークロードにどのように適用できるかについても調査しています。®