Slurm を使用して SageMaker HyperPod クラスターをオーケストレーションする - Amazon SageMaker

Slurm を使用して SageMaker HyperPod クラスターをオーケストレーションする

SageMaker HyperPod での Slurm サポートを使用すると、機械学習 (ML) ワークロードを実行し、大規模言語モデル (LLM)、拡散モデル、基盤モデル (FM) などの最先端のモデルを開発するための回復力のあるクラスターをプロビジョニングできます。AWS Trainium や NVIDIA A100 および H100 Graphical Processing Units (GPU) のようなアクセラレーターを何千と利用した大規模なコンピューティングクラスターの構築と保守にかかる、差別化につながらない面倒な作業を排除することで、FM の開発を加速します。アクセラレーターで障害が発生すると、SageMaker HyperPod の回復機能によりクラスターインスタンスが自動的に検出されて置き換えられるため、ML ワークロードの実行に集中できます。さらに、SageMaker HyperPod でのライフサイクル設定のサポートにより、ニーズに最適なコンピューティング環境をカスタマイズし、Amazon SageMaker 分散トレーニングライブラリを使用して設定することで、AWS で最適なパフォーマンスを実現できます。

クラスターを操作する

SageMaker HyperPod クラスターは、コンソールユーザーインターフェイス (UI) を使用する場合はグラフィカルにAWS コマンドラインインターフェイス (CLI) または AWS SDK for Python (Boto3) を使用する場合はプログラムで作成、設定、保守できます。Amazon VPC を使用すると、クラスターネットワークを保護でき、最速のスループットを提供する Amazon FSx for Lustre などの VPC 内のリソースによってクラスターを設定することもできます。さらに、クラスターインスタンスグループにさまざまな IAM ロールを付与し、クラスターリソースとユーザーが操作できるアクションを制限することもできます。詳細については、「SageMaker HyperPod オペレーション」を参照してください。

ML 環境を設定する

SageMaker HyperPod は、HyperPod クラスターに ML 環境をセットアップする SageMaker HyperPod DLAMI を実行します。ユースケースをサポートするライフサイクルスクリプトを提供することにより、DLAMI に追加のカスタマイズを設定できます。ライフサイクルスクリプトの設定方法の詳細については、「SageMaker HyperPod の使用開始に関するチュートリアル」と「ライフサイクルスクリプトを使用して SageMaker HyperPod クラスターをカスタマイズする」を参照してください。

ジョブをスケジュールする

HyperPod クラスターを正常に作成すると、クラスターユーザーはクラスターノード (ヘッドノードやコントローラーノード、ログインノード、ワーカーノードなど) にログインし、機械学習ワークロードを実行するジョブをスケジュールできます。詳細については、「SageMaker HyperPod クラスター上のジョブ」を参照してください。

ハードウェア障害からの回復性

SageMaker HyperPod はクラスターノードでヘルスチェックを実行し、ワークロード自動再開機能を提供します。HyperPod のクラスター回復性機能を使用すると、障害のあるノードが、ノード数が 16 個を超えるクラスター内の正常なノードに置き換えられた後、最後に保存したチェックポイントからワークロードを再開できます。詳細については、「SageMaker HyperPod クラスターの回復性」を参照してください。

クラスターをログ記録および管理する

SageMaker HyperPod リソース使用率メトリクスとライフサイクルログは Amazon CloudWatch にあり、タグ付けすることにより SageMaker HyperPod リソースを管理できます。CreateCluster API を実行するたびに、個別のログストリームが <cluster-name>-<timestamp> 形式の名前で作成されます。ログストリームでは、ホスト名、失敗したライフサイクルスクリプトの名前、stdoutstderr などの失敗したスクリプトからの出力を確認できます。詳細については、「SageMaker HyperPod クラスター管理」を参照してください。

SageMaker ツールと互換性がある

SageMaker HyperPod を使用すると、SageMaker 分散データ並列処理 (SMDDP) ライブラリなど、SageMaker が提供する AWS により最適化された集合通信ライブラリを使用してクラスターを設定できます。SMDDP ライブラリには、NVIDIA A100 GPU を搭載した最もパフォーマンスの高い SageMaker 機械学習インスタンスの AWS コンピューティングおよびネットワークインフラストラクチャに最適化された AllGather オペレーションが実装されています。詳細については、「HyperPod で Slurm を使用して分散トレーニングワークロードを実行する」を参照してください。