AWS Deep Learning AMI GPU PyTorch 2.4 (Ubuntu 22.04) - AWS Deep Learning AMIs

AWS Deep Learning AMI GPU PyTorch 2.4 (Ubuntu 22.04)

開始方法については、「DLAMI の使用開始」を参照してください。

AMI 名の形式

  • Deep Learning OSS Nvidia Driver AMI GPU PyTorch 2.4.${PATCH_VERSION} (Ubuntu 22.04) ${YYYY-MM-DD}

サポートされる EC2 インスタンス

  • DLAMI に関する重要な変更」を参照してください。

  • OSS Nvidia Driver による深層学習は、G4dn、G5、G6、Gr6、P4、P4de、P5、P5e、P5en をサポートしています。

AMI には、以下が含まれます。

  • サポートされている AWS のサービス: EC2

  • オペレーティングシステム: Ubuntu 22.04

  • コンピューティングアーキテクチャ: x86

  • Python: /opt/conda/envs/pytorch/bin/python

  • Nvidia Driver:

    • OSS Nvidia Driver: 550.144.03

  • NVIDIA CUDA12.1 スタック:

    • CUDA、NCCL、および cuDDN インストールパス: /usr/local/cuda-12.4/

    • デフォルトの CUDA: 12.4

      • /usr/local/cuda のパスは /usr/local/cuda-12.4/ を指します

      • 以下の環境変数が更新されました。

        • LD_LIBRARY_PATH に /usr/local/cuda/lib:/usr/local/cuda/lib64:/usr/local/cuda:/usr/local/cuda/targets/x86_64-linux/lib を設定しました

        • パスに /usr/local/cuda/bin/:/usr/local/cuda/include/ を設定しました

    • コンパイル済みシステム NCCL バージョンが /usr/local/cuda/: 2.21.5 に存在します

    • PyTorch conda 環境からの PyTorch のコンパイル済み NCCL のバージョン: 2.20.5

  • NCCL テストの場所:

    • all_reduce、all_gather、および reduce_scatter: /usr/local/cuda-xx.x/efa/test-cuda-xx.x/

    • NCCL テストを実行するため、LD_LIBRARY_PATH は既に必要なパスで更新されています。

      • 共通パスは、既に LD_LIBRARY_PATH に追加されています。

        • /opt/amazon/efa/lib:/opt/amazon/openmpi/lib:/opt/aws-ofi-nccl/lib:/usr/local/lib:/usr/lib

    • LD_LIBRARY_PATH は CUDA バージョンパスで更新されました

      • /usr/local/cuda/lib:/usr/local/cuda/lib64:/usr/local/cuda:/usr/local/cud/targets/x86_64-linux/lib

  • EFA インストーラ: 1.34.0

  • Nvidia GDRCopy: 2.4.1

  • Nvidia Transformer Engine: v1.11.0

  • AWS OFI NCCL プラグイン: EFA Installer-aws の一部としてインストールされます

    • インストールパス: /opt/aws-ofi-nccl/ /opt/aws-ofi-nccl/lib のパスが LD_LIBRARY_PATH に追加されました。

    • ring、message_transfer のテストパス: /opt/aws-ofi-nccl/tests

    • 注: PyTorch パッケージには、動的にリンクされた AWS OFI NCCL プラグインが conda パッケージの aws-ofi-nccl-dlc パッケージとして付属しており、PyTorch はシステム AWS OFI NCCL の代わりにそのパッケージを使用します。

  • AWS CLI v2 は aws2、AWS CLI v1 は aws です

  • EBS ボリュームタイプ: gp3

  • Python バージョン: 3.11

  • SSM パラメータで AMI-ID をクエリ (例: リージョンは us-east-1):

    • OSS Nvidia Driver:

      aws ssm get-parameter --region us-east-1 \ --name /aws/service/deeplearning/ami/x86_64/oss-nvidia-driver-gpu-pytorch-2.4-ubuntu-22.04/latest/ami-id \ --query "Parameter.Value" \ --output text
  • AWSCLI で AMI-ID をクエリ (例: リージョンは us-east-1):

    • OSS Nvidia Driver:

      aws ec2 describe-images --region us-east-1 \ --owners amazon \ --filters 'Name=name,Values=Deep Learning OSS Nvidia Driver AMI GPU PyTorch 2.4.? (Ubuntu 22.04) ????????' 'Name=state,Values=available' \ --query 'reverse(sort_by(Images, &CreationDate))[:1].ImageId' \ --output text

注意

P5/P5e インスタンス
  • DeviceIndex は各 NetworkCard に固有であり、NetworkCard あたりの ENI の制限値未満の負以外の整数である必要があります。P5 では、NetworkCard あたりの ENI の数は 2 で、DeviceIndex の有効な値は 0 または 1 のみとなります。以下は、awscli を使用した EC2 P5 インスタンスの起動コマンドの例です。最初のインターフェイスの NetworkCardIndex は 0~31、DeviceIndex は 0 で、残りの 31 のインターフェイスの DeviceIndex は 1 であることを示しています。

aws ec2 run-instances --region $REGION \ --instance-type $INSTANCETYPE \ --image-id $AMI --key-name $KEYNAME \ --iam-instance-profile "Name=dlami-builder" \ --tag-specifications "ResourceType=instance,Tags=[{Key=Name,Value=$TAG}]" \ --network-interfaces "NetworkCardIndex=0,DeviceIndex=0,Groups=$SG,SubnetId=$SUBNET,InterfaceType=efa" \ "NetworkCardIndex=1,DeviceIndex=1,Groups=$SG,SubnetId=$SUBNET,InterfaceType=efa" \ "NetworkCardIndex=2,DeviceIndex=1,Groups=$SG,SubnetId=$SUBNET,InterfaceType=efa" \ "NetworkCardIndex=3,DeviceIndex=1,Groups=$SG,SubnetId=$SUBNET,InterfaceType=efa" \ "NetworkCardIndex=4,DeviceIndex=1,Groups=$SG,SubnetId=$SUBNET,InterfaceType=efa" \ ... "NetworkCardIndex=31,DeviceIndex=1,Groups=$SG,SubnetId=$SUBNET,InterfaceType=efa"

リリース日: 2025 年 2 月 17 日

AMI 名: Deep Learning OSS Nvidia Driver AMI GPU PyTorch 2.4.1 (Ubuntu 22.04) 20250216

更新
  • NVIDIA Container Toolkit がバージョン 1.17.3 からバージョン 1.17.4 に更新されました

    • 詳細については、こちら https://github.com/NVIDIA/nvidia-container-toolkit/releases/tag/v1.17.4 のリリースノートページを参照してください。

    • Container Toolkit バージョン 1.17.4 では、CUDA 互換ライブラリのマウントが無効になりました。コンテナワークフローで複数の CUDA バージョンとの互換性を確保するには、「CUDA 互換性レイヤーを使用する場合」のチュートリアルに示されているように、LD_LIBRARY_PATH を更新して CUDA 互換ライブラリを含めるようにしてください。

リリース日: 2025 年 1 月 21 日

AMI 名: Deep Learning OSS Nvidia Driver AMI GPU PyTorch 2.4.1 (Ubuntu 22.04) 20250119

更新

リリース日: 2024 年 11 月 18 日

AMI 名: Deep Learning OSS Nvidia Driver AMI GPU PyTorch 2.4.1 (Ubuntu 22.04) 20241116

Fixed
  • Kernel Address Space Layout Randomization (KASLR) 機能の欠陥に対応するために Ubuntu カーネルが変更されているため、G4Dn/G5 インスタンスは OSS Nvidia Driver で CUDA を適切に初期化できません。この問題を軽減するために、DLAMI には G4Dn および G5 インスタンスの独自のドライバーを動的にロードする機能があります。このロードでは、インスタンスが正しく動作するように短時間の初期化待機期間を設けてください。

    • このサービスのステータスと健全性を確認するために、以下のコマンドを使用できます。

sudo systemctl is-active dynamic_driver_load.service active

リリース日: 2024 年 10 月 16 日

AMI 名: Deep Learning OSS Nvidia Driver AMI GPU PyTorch 2.4.1 (Ubuntu 22.04) 20241016

追加

リリース日: 2024 年 9 月 30 日

AMI 名: Deep Learning OSS Nvidia Driver AMI GPU PyTorch 2.4.1 (Ubuntu 22.04) 20240929

更新
  • Nvidia Container Toolkit がバージョン 1.16.1 から 1.16.2 にアップグレードされ、セキュリティの脆弱性 CVE-2024-0133 に対応しました。

リリース日: 2024 年 9 月 26 日

AMI 名: Deep Learning OSS Nvidia Driver AMI GPU PyTorch 2.4.1 (Ubuntu 22.04) 20240925

追加
  • Deep Learning AMI GPU PyTorch 2.4.1 (Ubuntu 22.04) シリーズの初回リリース。conda 環境を含む PyTorch は、Nvidia Driver R550、CUDA=12.4.1、cuDNN=8.9.7、PyTorch NCCL=2.20.5、および EFA=1.34.0 で補完されています。