Cloud HPC Toolkit を使用した AI と ML のワークロードの実行
Google Cloud Japan Team
※この投稿は米国時間 2023 年 11 月 11 日に、Google Cloud blog に投稿されたものの抄訳です。
ハイ パフォーマンス コンピューティング(HPC)システムと AI / ML のワークロードの融合によって、複雑な問題の解決方法が一変しつつあります。HPC システムは、大規模言語モデル(LLM)などの ML ワークロードのトレーニングに必要な AI を活用したコンピューティング インフラストラクチャと並列処理機能を備えているため、AI と ML のワークロードに最適です。LLM とは、リクエストに対する関連性の高い応答を自然言語で生成するように、大量のテキストデータでトレーニングされた AI モデルです。その一方、HPC システムのアルゴリズムと構成を最適化することで、それらシステムのパフォーマンスを強化するために、AI と ML のワークロードを使用できます。また、従来は HPC によって処理されていた問題解決を AI が高速化したり、新たに担うようになったりするケースもあります。たとえば、AlphaFold のタンパク質フォールディングなどです。


こうした HPC と AI / ML の組み合わせから、両者のコミュニティの間にイノベーションとコラボレーションの新たな機会が生まれています。たとえば、NVIDIA の NeMo フレームワークなどの AI / ML フレームワークを従来の HPC クラスタで使用して、モデルを大規模にカスタマイズしてデプロイしているお客様もいらっしゃいます。これらのシステムは、NVIDIA H100 Tensor Core GPU を採用した A3 VM などのような Google Cloud の NVIDIA GPU スーパー コンピュータにデプロイできます。
AI と ML に関する Google Cloud HPC Toolkit の機能強化
Google Cloud HPC Toolkit は、HPC と AI / ML のワークロード向けの繰り返し可能なターンキー HPC 環境を作り出すためのオープンソースのツールとリソースをまとめたソリューションです。既存のブループリントを手軽に使用する場合も、シンプルな YAML ファイルで独自のブループリントを作成する場合も、短時間でクラスタの稼働を開始できます。
このたび、Cloud HPC Toolkit が更新され、Google Cloud で AI / ML のワークロードを実行できるようになりました。AI / ML のブループリントはパートナー企業である NVIDIA と連携して開発されたもので、AI と ML のニーズに最適なパフォーマンスを確実に発揮できます。ブループリントには、3 種類の NVIDIA GPU VM(G2、A2、A3)をサポートするパーティションが事前構成されています。
さらに、システムのベースを Ubuntu Deep Learning VM Image にすることや、システムに最新の NCCL Fast Socket 最適化を含めることができます。ブループリントにバンドルされている enroot コンテナ ユーティリティや Slurm Workload Manager 用の Pyxis プラグインといった高性能なツールにより、非特権コンテナにシームレスに統合し、Slurm ジョブでコンテナを指定できるようになりました。Google Cloud で利用可能な NVIDIA GPU で LLM をトレーニングできる HPC 環境を、わずか数回のクリックで設定できます。
Cloud HPC Toolkit を使用して AI と ML をデプロイする
HPC Toolkit を使用してクラスタをデプロイするプロセスはシンプルです。一般的なデプロイは以下の 3 ステップで完了します。
- こちらの手順に沿って対象の Google Cloud プロジェクトに Cloud HPC Toolkit を設定します。
- HPC デプロイ フォルダを作成します。通常は、GitHub リポジトリにあるいずれかのサンプルをカスタマイズしてから ghpc create <path-to-deployment-configuration.yaml> を実行します。これにより、クラスタのデプロイに必要な自動生成 Terraform 構成、Packer ビルド スクリプト、VM 起動スクリプトをすべて含んだデプロイ フォルダが作成されます。同じことを自分で行おうとすると、数千行ものカスタム構成が必要になるところです。
- ghpc deploy <path-to-deployment-folder/> を使用してインフラストラクチャをデプロイします。これにより、カスタム VM イメージ、ネットワーク、ファイアウォール、インスタンス テンプレートのデプロイだけでなく、ワークロードの起動に使用される Slurm ログインノードとコントローラ ノードもトリガーされます。
HPC クラスタがプロビジョニングされたら、他の標準的な HPC ワークロードと同様に AI モデルのトレーニングとデプロイを実施できます。まず Slurm ログインノードにログインし、以下のような最初の検証テストを実行します。
srun -N 1 --gpus-per-node=8 nvidia-smi
次に、こちらの手順に沿って、NVIDIA NeMo フレームワークをインストールして実行します。同様に、こちらのチュートリアルを使用して LLaMA(Meta が構築した基盤 LLM)を設定することもできます。
パートナー様の声
「ハイ パフォーマンス コンピューティング システムと AI および ML のワークロードが融合することで、さまざまな業界の企業が複雑な問題に対応する手法が一変しつつあります。」と NVIDIA の NeMo 担当プロダクト マネージャー Nirmalya De 氏は述べています。「Google HPC Toolkit チームと連携したことで、NVIDIA NeMo を実行する AI と ML のワークロードが高速になり、Google Cloud で利用可能な NVIDIA H100 Tensor Core GPU で簡単にスケールできるようになりました。新しい HPC Toolkit のブループリントにより、AI テクノロジーが秘める可能性を引き出すことができます。」
Cloud HPC Toolkit を使用して HPC システムで LLM を短時間で稼働させる方法について詳しくは、Google Cloud チームにお問い合わせください。
-Cloud HPC 担当グループ プロダクト マネージャー Annie Ma-Weaver
-EMEA 地域 HPC 担当責任者 Ilias Katsardis