Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
AWS Deep-Learning-OSS-AMI-GPU PyTorch 2.7 (Ubuntu 22.04)
Hilfe zu den ersten Schritten finden Sie unterErste Schritte mit DLAMI.
AMI-Namensformat
Deep Learning OSS Nvidia-Treiber AMI GPU PyTorch 2.7 (Ubuntu 22.04) $ {YYYY-MM-DD}
EC2 Unterstützte Instanzen
Weitere Informationen finden Sie unter Wichtige Änderungen an DLAMI
G4dn, G5, G5, Gr6, P4, P4de, P5, P5e, P5en, P6-B200
Das AMI umfasst Folgendes:
Unterstützter AWS Service: Amazon EC2
Betriebssystem: Ubuntu 22.04
Rechenarchitektur: x86
Linux-Kernel: 6.8
NVIDIA-Treiber: 570.133.20
NVIDIA CUDA 12.8-Stapel:
CUDA-, NCCL- und cuDDN-Installationsverzeichnisse:/-12.8/ usr/local/cuda
Ort der NCCL-Tests:
all_reduce, all_gather und reduce_scatter:
/usr/local/cuda-12.8/efa/test-cuda-12.8/
Um NCCL-Tests auszuführen, wurde LD_LIBRARY_PATH bereits mit den benötigten Pfaden aktualisiert.
Häufig verwendete Dateien wurden bereits zu LD_LIBRARY_PATH hinzugefügt: PATHs
/opt/amazon/efa/lib:/opt/amazon/openmpi/lib:/opt/amazon/ofi-nccl/lib:/usr/local/lib:/usr/lib
LD_LIBRARY_PAT wurde mit CUDA-Versionspfaden aktualisiert:
/usr/local/cuda/lib:/usr/local/cuda/lib64:/usr/local/cuda:/usr/local/cuda/targets/x86_64-linux/lib
Kompilierte NCCL-Version:
Für das CUDA-Verzeichnis von 12.8, kompilierte NCCL-Version 2.26.2+. CUDA12
Standard-CUDA: 12.8
PATH//usr/local/cudazeigt auf CUDA 12.8
-
Die folgenden Umgebungsvariablen wurden aktualisiert:
LD_LIBRARY_PATH soll/haben usr/local/cuda/lib:/usr/local/cuda/lib64:/usr/local/cuda/targets/x86_64-linux/lib
PATH, um//zu haben usr/local/cuda/bin/:/usr/local/cuda/include
EFA-Installationsprogramm: 1.40.0
Nvidia GDRCopy: 2.5
Nvidia-Transformer-Engine: 1.11.0
AWS OFI NCCL: 1.14.2-aws
Installationspfad:/wird zu LD_LIBRARY_PATH hinzugefügt opt/amazon/ofi-nccl/. Path /opt/amazon/ofi-nccl/lib
AWS CLI v2 bei/usr/local/bin/aws
EBS-Volumetyp: gp3
Nvidia-Container-Toolkit: 1.17.7
Versionsbefehl: -V nvidia-container-cli
Docker: 28.2.2
Python:/usr/bin/python3.12
AMI-ID mit SSM-Parameter abfragen (Beispielregion ist us-east-1):
aws ssm get-parameter --region
us-east-1
\ --name /aws/service/deeplearning/ami/x86_64/oss-nvidia-driver-gpu-pytorch-2.7-ubuntu-22.04/latest/ami-id \ --query "Parameter.Value" \ --output textAMI-ID abfragen mit AWSCLI (Beispielregion ist us-east-1):
aws ec2 describe-images --region us-east-1 --owners amazon --filters 'Name=name,Values=Deep Learning OSS Nvidia Driver AMI GPU PyTorch 2.7 (Ubuntu 22.04) ????????' 'Name=state,Values=available' --query 'reverse(sort_by(Images, &CreationDate))[:1].ImageId' --output text
Hinweise
Flash, Achtung
Flash Attention hat noch keine offizielle Version für PyTorch 2.7
. Aus diesem Grund wird es vorübergehend aus diesem AMI entfernt. Sobald eine offizielle Version für PyTorch 2.7 veröffentlicht wurde, werden wir sie in dieses AMI aufnehmen. Ohne Flash Attention verwendet die Transformer Engine standardmäßig cuDNN Fused Attention. Derzeit sind Probleme mit Fused Attention und GPUs Blackwell bekannt, z. B. bei P6-B200-Instances.
„Bei der Rechenkapazität sm10.0 (Blackwell-Architektur) enthält der FP8 Datentyp mit skalierter Aufmerksamkeit auf Punktprodukte einen Deadlock GPUs, der dazu führt, dass der Kernel unter bestimmten Umständen hängen bleibt, z. B. wenn das Problem groß ist oder wenn auf der GPU mehrere Kernel gleichzeitig ausgeführt werden. Ein Fix ist für eine future Version geplant.“ [CuDNN 9.10.0 Versionshinweise
] Benutzer, die P6-B200-Instances mit FP8 Daten und skalierter Aufmerksamkeit auf Punktprodukte ausführen möchten, sollten erwägen, Flash Attention manuell zu installieren.
P6-B200-Instanzen
P6-B200-Instanzen erfordern CUDA Version 12.8 oder höher und NVIDIA-Treiber 570 oder neuere Treiber.
P6-B200 enthält 8 Netzwerkschnittstellenkarten und kann mit dem folgenden AWS CLI-Befehl gestartet werden:
aws ec2 run-instances --region $REGION \ --instance-type $INSTANCETYPE \ --image-id $AMI --key-name $KEYNAME \ --iam-instance-profile "Name=dlami-builder" \ --tag-specifications "ResourceType=instanace,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=7,DeviceIndex=1,Groups=$SG,SubnetId=$SUBNET,InterfaceType=efa"
P5/P5e-Instanzen
DeviceIndex ist für jede Variable eindeutig NetworkCard und muss eine nicht negative Ganzzahl sein, die unter dem Grenzwert von per liegt. ENIs NetworkCard Auf P5 NetworkCard ist die Anzahl von ENIs per 2, was bedeutet, dass die einzigen gültigen Werte für 0 oder 1 DeviceIndex sind. Im Folgenden finden Sie ein Beispiel für einen Befehl zum Starten einer EC2 P5-Instanz mithilfe von awscli, der NetworkCardIndex für die Zahlen 0-31 und DeviceIndex als 0 für die erste Schnittstelle und 1 für die verbleibenden 31 Schnittstellen angezeigt wird.
aws ec2 run-instances --region $REGION \ --instance-type $INSTANCETYPE \ --image-id $AMI --key-name $KEYNAME \ --iam-instance-profile "Name=dlami-builder" \ --tag-specifications "ResourceType=instanace,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"
Kernel
Die Kernel-Version wird mit dem folgenden Befehl gepinnt:
echo linux-aws hold | sudo dkpg -set-selections echo linux-headers-aws hold | sudo dpkg -set-selections echo linux-image-aws hold | sudo dpkg -set-selections
Wir empfehlen Benutzern, die Aktualisierung ihrer Kernel-Version zu vermeiden (es sei denn, es liegt ein Sicherheitspatch vor), um die Kompatibilität mit den installierten Treibern und Paketversionen sicherzustellen. Wenn Benutzer dennoch ein Update durchführen möchten, können sie die folgenden Befehle ausführen, um ihre Kernelversionen zu entsperren:
echo linux-aws install | sudo dpkg -set-selections echo linux-headers-aws install | sudo dpkg -set-selections echo linux-image-aws install | sudo dpkg -set-selections apt-get upgrade -y
Für jede neue Version von DLAMI wird der neueste verfügbare kompatible Kernel verwendet.
PyTorch Veraltete Version von Anaconda Channel
Ab Version PyTorch 2.6 wird die Unterstützung für Conda eingestellt (siehe offizielle Ankündigung). PyTorch
Datum der Veröffentlichung: 2025-06-03
AMI-Name: Deep Learning OSS Nvidia-Treiber AMI GPU PyTorch 2.7 (Ubuntu 22.04) 20250602
Hinzugefügt
Erste Version der Deep Learning AMI GPU PyTorch 2.7 (Ubuntu 22.04) -Serie. Einschließlich einer virtuellen Python-Umgebung pytorch (source/opt/pytorch/bin/activate), ergänzt mit NVIDIA-Treiber R570, CUDA=12.8, cuDNN=9.10, NCCL=2.26.5 und EFA=1.40.0. PyTorch
Bekannte Probleme
„Mit der Rechenkapazität sm10.0 (Blackwell-Architektur) GPUs enthält der FP8 Datentyp mit skalierter Aufmerksamkeit auf das Punktprodukt einen Deadlock, der dazu führt, dass der Kernel unter bestimmten Umständen hängen bleibt, z. B. wenn das Problem groß ist oder die GPU mehrere Kernel gleichzeitig ausführt. Ein Fix ist für eine future Version geplant.“ [CuDNN 9.10.0 Versionshinweise
] Benutzer, die P6-B200-Instances mit FP8 Daten und skalierter Aufmerksamkeit auf Punktprodukte ausführen möchten, sollten erwägen, Flash Attention manuell zu installieren.