AWS インフラストラクチャに最適化された SMDDP ライブラリとの互換性 - Amazon SageMaker

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS インフラストラクチャに最適化された SMDDP ライブラリとの互換性

SageMaker モデル並列処理ライブラリ v2 (SMP v2) は、 AWS インフラストラクチャに最適化されたAllGather集合通信オペレーションを提供するSageMaker 分散データ並列処理 (SMDDP) ライブラリと組み合わせて使用できます。分散トレーニングでは、集合通信オペレーションは、複数の GPU ワーカーを同期し、それらの間で情報を交換するように設計されています。 AllGatherは、シャーディングデータ並列処理で通常使用されるコア集合通信オペレーションの 1 つです。SMDDP AllGatherオペレーションの詳細については、「このような集合的な通信オペレーションSMDDP AllGather集合演算を最適化すると、収束に悪影響が及ばずに end-to-end トレーニングが高速化されます。」を参照してください。

注記

SMDDP ライブラリは P4 インスタンスと P4de インスタンスをサポートします (SMDDP ライブラリサポートされているフレームワーク AWS リージョン、およびインスタンスタイプの も参照してください)。

SMDDP ライブラリは、プロセスグループレイヤー PyTorch を介して とネイティブに統合されます。SMDDP ライブラリを使用するには、トレーニングスクリプトに 2 行のコードを追加するだけです。 SageMaker モデル並列処理ライブラリ、 PyTorch FSDP、 などのトレーニングフレームワークをサポートしています DeepSpeed。

SMDDP をアクティブ化してそのAllGatherオペレーションを使用するには、 の一部としてトレーニングスクリプトに 2 行のコードを追加する必要がありますステップ 1: PyTorch FSDP トレーニングスクリプトを調整する。最初に SMDDP バックエンドで PyTorch 分散を初期化してから、SMP 初期化を実行する必要があることに注意してください。

import torch.distributed as dist # Initialize with SMDDP import smdistributed.dataparallel.torch.torch_smddp dist.init_process_group(backend="smddp") # Replacing "nccl" # Initialize with SMP import torch.sagemaker as tsm tsm.init()

SageMaker のフレームワークコンテナ PyTorch (SMP サポートされるフレームワークと AWS リージョン v2 および SMDDP ライブラリサポートされているフレームワーク AWS リージョン、およびインスタンスタイプによる も参照) は、SMP バイナリと SMDDP バイナリで事前にパッケージ化されています。SMDDP ライブラリの詳細については、「」を参照してください SageMaker 分散データ並列処理ライブラリによる分散トレーニングの実行