サポート対象のフレームワーク、AWS リージョン、インスタンスタイプ
SageMaker AI 分散データ並列処理 (SMDDP) ライブラリを使用する前に、サポートされている ML フレームワークとインスタンスタイプを確認し、AWS アカウントおよび AWS リージョン に十分なクォータがあるか確かめてください。
サポートされるフレームワーク
次の表には、SageMaker AI と SMDDP がサポートしている深層学習フレームワークとそのバージョンをまとめています。SMDDP ライブラリは SageMaker AI フレームワークコンテナ
注記
SMDDP ライブラリの最新の更新情報とリリースノートを確認するには、「SageMaker AI データ並列処理ライブラリのリリースノート」を参照してください。
PyTorch
| PyTorch バージョン | SMDDP ライブラリのバージョン | SMDDP がプリインストールされた SageMaker AI フレームワークコンテナイメージ | SMDDP がプリインストールされた SMP Docker イメージ | バイナリファイルの URL** |
|---|---|---|---|---|
| v2.3.1 | smdistributed-dataparallel==v2.5.0 |
利用不可 | 658645717510.dkr.ecr. |
https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.4.1/cu121/2024-10-09/smdistributed_dataparallel-2.5.0-cp311-cp311-linux_x86_64.whl |
| v2.3.0 | smdistributed-dataparallel==v2.3.0 |
763104351884.dkr.ecr. |
現時点では利用不可 | https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.3.0/cu121/2024-05-23/smdistributed_dataparallel-2.3.0-cp311-cp311-linux_x86_64.whl |
| v2.2.0 | smdistributed-dataparallel==v2.2.0 |
763104351884.dkr.ecr. |
658645717510.dkr.ecr. |
https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.2.0/cu121/2024-03-04/smdistributed_dataparallel-2.2.0-cp310-cp310-linux_x86_64.whl |
| 「v2.1.0」 | smdistributed-dataparallel==v2.1.0 |
763104351884.dkr.ecr. |
658645717510.dkr.ecr. |
https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.1.0/cu121/2024-02-04/smdistributed_dataparallel-2.1.0-cp310-cp310-linux_x86_64.whl |
| v2.0.1 | smdistributed-dataparallel==v2.0.1 |
763104351884.dkr.ecr. |
利用不可 | https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.0.1/cu118/2023-12-07/smdistributed_dataparallel-2.0.2-cp310-cp310-linux_x86_64.whl |
| v2.0.0 | smdistributed-dataparallel==v1.8.0 |
763104351884.dkr.ecr. |
利用不可 | https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.0.0/cu118/2023-03-20/smdistributed_dataparallel-1.8.0-cp310-cp310-linux_x86_64.whl |
| v1.13.1 | smdistributed-dataparallel==v1.7.0 |
763104351884.dkr.ecr. |
利用不可 | https://smdataparallel.s3.amazonaws.com/binary/pytorch/1.13.1/cu117/2023-01-09/smdistributed_dataparallel-1.7.0-cp39-cp39-linux_x86_64.whl |
| v1.12.1 | smdistributed-dataparallel==v1.6.0 |
763104351884.dkr.ecr. |
利用不可 | https://smdataparallel.s3.amazonaws.com/binary/pytorch/1.12.1/cu113/2022-12-05/smdistributed_dataparallel-1.6.0-cp38-cp38-linux_x86_64.whl |
| v1.12.0 | smdistributed-dataparallel==v1.5.0 |
763104351884.dkr.ecr. |
利用不可 | https://smdataparallel.s3.amazonaws.com/binary/pytorch/1.12.0/cu113/2022-07-01/smdistributed_dataparallel-1.5.0-cp38-cp38-linux_x86_64.whl |
| v1.11.0 | smdistributed-dataparallel==v1.4.1 |
763104351884.dkr.ecr. |
利用不可 | https://smdataparallel.s3.amazonaws.com/binary/pytorch/1.11.0/cu113/2022-04-14/smdistributed_dataparallel-1.4.1-cp38-cp38-linux_x86_64.whl |
** バイナリファイルの URL は、カスタムコンテナに SMDDP をインストールする場合に使用します。詳細については、「SageMaker AI 分散データ並列ライブラリを使用して独自の Docker コンテナを作成する」を参照してください。
注記
SMDDP ライブラリは、SageMaker AI フレームワークコンテナ
注記
SMDDP ライブラリ v1.4.0 以降は、PyTorch 分散 (torch.distributed) データ並列処理 (torch.parallel.DistributedDataParallel) のバックエンドとして機能します。この変更に伴い、PyTorch 分散パッケージの以下の smdistributed API
-
smdistributed.dataparallel.torch.distributedを廃止しました。代わりに torch.distributedパッケージを使用してください。 -
smdistributed.dataparallel.torch.parallel.DistributedDataParallelを廃止しました。代わりに「torch.nn.parallel.DistributedDataParallel」API を使用してください。
以前のバージョンのライブラリ (v1.3.0 以前) を使用する必要がある場合は、SageMaker AI Python SDK ドキュメントで SageMaker AI 分散データ並列処理に関するアーカイブ済みドキュメント
PyTorch Lightning
SMDDP ライブラリは PyTorch Lightning に対応しており、次の PyTorch 用の SageMaker AI フレームワークコンテナと SMP Docker コンテナで使用できます。
PyTorch Lightning v2
| PyTorch Lightning バージョン | PyTorch バージョン | SMDDP ライブラリのバージョン | SMDDP がプリインストールされた SageMaker AI フレームワークコンテナイメージ | SMDDP がプリインストールされた SMP Docker イメージ | バイナリファイルの URL** |
|---|---|---|---|---|---|
| 2.2.5 | 2.3.0 | smdistributed-dataparallel==v2.3.0 |
763104351884.dkr.ecr. |
現時点では利用不可 | https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.3.0/cu121/2024-05-23/smdistributed_dataparallel-2.3.0-cp311-cp311-linux_x86_64.whl |
| 2.2.0 | 2.2.0 | smdistributed-dataparallel==v2.2.0 |
763104351884.dkr.ecr. |
658645717510.dkr.ecr. |
https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.2.0/cu121/2024-03-04/smdistributed_dataparallel-2.2.0-cp310-cp310-linux_x86_64.whl |
| 2.1.2 | 2.1.0 | smdistributed-dataparallel==v2.1.0 |
763104351884.dkr.ecr. |
658645717510.dkr.ecr. |
https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.1.0/cu121/2024-02-04/smdistributed_dataparallel-2.1.0-cp310-cp310-linux_x86_64.whl |
| 2.1.0 | 2.0.1 | smdistributed-dataparallel==v2.0.1 |
763104351884.dkr.ecr. |
利用不可 | https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.0.1/cu118/2023-12-07/smdistributed_dataparallel-2.0.2-cp310-cp310-linux_x86_64.whl |
PyTorch Lightning v1
| PyTorch Lightning バージョン | PyTorch バージョン | SMDDP ライブラリのバージョン | SMDDP がプリインストールされた SageMaker AI フレームワークコンテナイメージ | バイナリファイルの URL** |
|---|---|---|---|---|
|
1.7.2 1.7.0 1.6.4 1.6.3 1.5.10 |
1.12.0 | smdistributed-dataparallel==v1.5.0 |
763104351884.dkr.ecr.<region>.amazonaws.com/pytorch-training:1.12.0-gpu-py38-cu113-ubuntu20.04-sagemaker |
https://smdataparallel.s3.amazonaws.com/binary/pytorch/1.12.0/cu113/2022-07-01/smdistributed_dataparallel-1.5.0-cp38-cp38-linux_x86_64.whl |
** バイナリファイルの URL は、カスタムコンテナに SMDDP をインストールする場合に使用します。詳細については、「SageMaker AI 分散データ並列ライブラリを使用して独自の Docker コンテナを作成する」を参照してください。
注記
PyTorch Lightning と Lightning Bolts などのユーティリティライブラリは、PyTorch DLC にはプリインストールされていません。Step 2 で SageMaker AI PyTorch 推定器を作成してトレーニングジョブリクエストを送信する場合、SageMaker AI PyTorch トレーニングコンテナに pytorch-lightning および lightning-bolts をインストールするために requirements.txt を指定する必要があります。
# requirements.txt pytorch-lightning lightning-bolts
トレーニングスクリプトやジョブ送信と一緒に requirements.txt ファイルを配置するソースディレクトリを指定する方法の詳細については、Amazon SageMaker AI Python SDK ドキュメントの「Using third-party libraries
Hugging Face Transformers
Hugging Face 用の AWS 深層学習コンテナは、PyTorch と TensorFlow 用の SageMaker トレーニングコンテナをベースイメージとして使用しています。Hugging Face Transformers ライブラリのバージョンとペアになる PyTorch と TensorFlow のバージョンを調べるには、最新の Hugging Face コンテナ
TensorFlow (非推奨)
重要
SMDDP ライブラリは TensorFlow のサポートを終了し、v2.11.0 より新しい TensorFlow の DLC では使用できなくなりました。次の表には、SMDDP ライブラリがインストールされている以前の TensorFlow 用 DLC をまとめています。
| TensorFlow バージョン | SMDDP ライブラリのバージョン |
|---|---|
| 2.9.1、2.10.1、2.11.0 |
smdistributed-dataparallel==v1.4.1
|
| 2.8.3 |
smdistributed-dataparallel==v1.3.0
|
AWS リージョン
SMDDP ライブラリは、AWS Deep Learning Containers for SageMaker AI
サポートされるインスタンスタイプ
SMDDP ライブラリには、次のいずれかのインスタンスタイプが必要です。
| インスタンスタイプ |
|---|
ml.p3dn.24xlarge* |
ml.p4d.24xlarge |
ml.p4de.24xlarge |
ヒント
EFA 対応のインスタンスタイプで分散トレーニングを適切に実行するには、VPC のセキュリティグループとの間のインバウンドトラフィックとアウトバウンドトラフィックをすべて許可するように設定し、インスタンス間のトラフィックを有効にする必要があります。セキュリティグループのルールを設定する方法については、「Amazon EC2 ユーザーガイド」の「ステップ 1: EFA 対応のセキュリティグループを準備する」を参照してください。
重要
* SMDDP ライブラリは、P3 インスタンスにおける集合通信演算の最適化のサポートを終了しました。SMDDP の最適化した AllReduce 集合演算を引き続き ml.p3dn.24xlarge インスタンスで使用できますが、このインスタンスタイプにおけるパフォーマンス向上のための開発サポートは今後は提供されません。SMDDP の最適化した AllGather 集合演算は P4 インスタンスでのみ使用できます。
インスタンスタイプの仕様については、「Amazon EC2 インスタンスタイプ」ページの「高速コンピューティング」
次のようなエラーメッセージが表示された場合は、「Request a service quota increase for SageMaker AI resources」の手順に従います。
ResourceLimitExceeded: An error occurred (ResourceLimitExceeded) when calling the CreateTrainingJob operation: The account-level service limit 'ml.p3dn.24xlarge for training job usage' is 0 Instances, with current utilization of 0 Instances and a request delta of 1 Instances. Please contact AWS support to request an increase for this limit.