AMI de aprendizaje profundo de AWS - GPU PyTorch 2.4 (Ubuntu 22.04)
Para obtener ayuda para comenzar, consulte Introducción a las DLAMI.
Formato del nombre de AMI
-
AMI de aprendizaje profundo de controlador con software de código abierto de Nvidia - GPU PyTorch 2.4.${PATCH_VERSION} (Ubuntu 22.04) ${YYYY-MM-DD}
Instancias de EC2 admitidas
-
Consulte el documento de cambios importantes en la DLAMI.
-
El aprendizaje profundo con el controlador con software de código abierto de Nvidia admite G4dn, G5, G6, Gr6, P4, P4de, P5, P5e y P5en.
La AMI incluye lo siguiente:
-
Servicio de AWS compatible: EC2
-
Sistema operativo: Ubuntu 22.04
-
Arquitectura de cómputo: x86
-
Python: /opt/conda/envs/pytorch/bin/python
-
Controlador de NVIDIA:
-
Controlador con software de código abierto de Nvidia: 550.144.03
-
-
Pila CUDA12.1 de NVIDIA:
-
Ruta de instalación de CUDA, NCCL y cuDDN: /usr/local/cuda-12.4/
-
CUDA predeterminado: 12.4
-
La ruta /usr/local/cuda apunta a /usr/local/cuda-12.4/
-
Se han actualizado las siguientes variables de entorno:
-
LD_LIBRARY_PATH para tener /usr/local/cuda/lib:/usr/local/cuda/lib64:/usr/local/cuda:/usr/local/cuda/targets/x86_64-linux/lib
-
PATH para tener /usr/local/cuda/bin/:/usr/local/cuda/include/
-
-
-
Versión NCCL del sistema compilado presente en /usr/local/cuda/: 2.21.5
-
Versión NCCL compilada por PyTorch del entorno de conda de PyTorch: 2.20.5
-
-
Ubicación de las pruebas de NCCL:
-
all_reduce, all_gather y reduce_scatter: /usr/local/cuda-xx.x/efa/test-cuda-xx.x/
-
Para ejecutar las pruebas de NCCL, LD_LIBRARY_PATH ya cuenta con las rutas necesarias actualizadas.
-
Los PATH comunes ya están agregados a LD_LIBRARY_PATH:
-
/opt/amazon/efa/lib:/opt/amazon/openmpi/lib:/opt/aws-ofi-nccl/lib:/usr/local/lib:/usr/lib
-
-
-
LD_LIBRARY_PATH se ha actualizado con las rutas de la versión de CUDA
-
/usr/local/cuda/lib:/usr/local/cuda/lib64:/usr/local/cuda:/usr/local/cud/targets/x86_64-linux/lib
-
-
-
Instalador de EFA: 1.34.0
-
Nvidia GDRCopy: 2.4.1
-
NVIDIA Transformer Engine: v1.11.0
-
complemento OFI NCCL de AWS: se instala como parte del instalador de EFA-aws
-
Ruta de instalación: /opt/aws-ofi-nccl/. La ruta /opt/aws-ofi-nccl/lib se ha añadido a LD_LIBRARY_PATH.
-
Ruta de las pruebas de llamada, message_transfer: /opt/aws-ofi-nccl/tests
-
Nota: El paquete de PyTorch viene con el complemento OFI NCCL de AWS vinculado dinámicamente como un paquete de conda aws-ofi-nccl-dlc y PyTorch lo usará en lugar del OFI NCCL de AWS del sistema.
-
-
AWS CLI v2 como aws2 y AWS CLI v1 como aws
-
Tipo de volumen EBS: gp3
-
Versión de Python: 3.11
-
AMI-ID de la consulta con el parámetro SSM (la región de ejemplo es us-east-1):
-
Controlador con software de código abierto de NVIDIA:
aws ssm get-parameter --regionus-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
-
-
AMI-ID de la consulta con AWSCLI (la región de ejemplo es us-east-1):
-
Controlador con software de código abierto de NVIDIA:
aws ec2 describe-images --regionus-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
-
Avisos
Instancias P5/P5e
-
DeviceIndex es único para cada NetworkCard y debe ser un número entero no negativo inferior al límite de ENI por NetworkCard. En P5, el número de ENI por NetworkCard es de 2, lo que significa que los únicos valores válidos para DeviceIndex son 0 o 1. A continuación, se muestra el ejemplo del comando de lanzamiento de una instancia P5 de EC2 mediante awscli que muestra NetworkCardIndex del número 0 al 31 y DeviceIndex como 0 para la primera interfaz y DeviceIndex como 1 para las 31 interfaces restantes.
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"
Fecha de la versión: 17/02/2025
Nombre de AMI: AMI de aprendizaje profundo del controlador con software de código abierto de Nvidia - GPU PyTorch 2.4.1 (Ubuntu 22.04) 20250216
Actualizado
-
Se ha actualizado el kit de herramientas de contenedores de NVIDIA de la versión 1.17.3 a la versión 1.17.4.
-
Consulte la página de notas de la versión aquí para obtener más información: https://github.com/NVIDIA/nvidia-container-toolkit/releases/tag/v1.17.4
-
En la versión 1.17.4 del kit de herramientas de contenedores, el montaje de bibliotecas de compatibilidad con CUDA se ha desactivado. Para garantizar la compatibilidad con varias versiones de CUDA en los flujos de trabajo de contenedores, asegúrese de actualizar su LD_LIBRARY_PATH para incluir las bibliotecas de compatibilidad con CUDA, tal y como se muestra en el tutorial Si utiliza una capa de compatibilidad CUDA.
-
Fecha de la versión: 21-01-2025
Nombre de AMI: AMI de aprendizaje profundo del controlador con software de código abierto de Nvidia - GPU PyTorch 2.4.1 (Ubuntu 22.04) 20250119
Actualizado
-
Se ha actualizado el controlador de Nvidia de la versión 550.127.05 a la 550.144.03 para corregir los CVE, tal como aparecen en el boletín de seguridad de los controladores de pantalla de GPU de NVIDIA de enero de 2025
.
Fecha de la versión: 18/11/2024
Nombre de AMI: AMI de aprendizaje profundo del controlador con software de código abierto de Nvidia - GPU PyTorch 2.4.1 (Ubuntu 22.04) 20241116
Fixed
-
Debido a un cambio en el kernel de Ubuntu para corregir un defecto en la funcionalidad de asignación al azar del diseño del espacio de direcciones del núcleo (KASLR), las instancias G4Dn/G5 no pueden inicializar CUDA correctamente en el controlador con software de código abierto de Nvidia. Para mitigar este problema, esta DLAMI incluye una funcionalidad que carga dinámicamente el controlador propietario para las instancias G4Dn y G5. A fin de garantizar el correcto funcionamiento de las instancias, espere un breve período de inicialización mientras cargan.
-
Puede utilizar los siguientes comandos para comprobar el estado y la condición del servicio:
-
sudo systemctl is-active dynamic_driver_load.serviceactive
Fecha de la versión: 16/10/2024
Nombre de AMI: AMI de aprendizaje profundo del controlador con software de código abierto de Nvidia - GPU PyTorch 2.4.1 (Ubuntu 22.04) 20241016
Se agregó
-
Se agregó la versión 1.11.0 de Nvidia Transformer Engine para acelerar los modelos de Transformer (para obtener más información, consulte https://docs.nvidia.com/deeplearning/transformer-engine/user-guide/index.html
).
Fecha de la versión: 30/09/2024
Nombre de AMI: AMI de aprendizaje profundo del controlador con software de código abierto de Nvidia - GPU PyTorch 2.4.1 (Ubuntu 22.04) 20240929
Actualizado
-
Se ha actualizado el kit de herramientas de contenedores de Nvidia de la versión 1.16.1 a la 1.16.2 para corregir la vulnerabilidad de seguridad CVE-2024-0133
.
Fecha de la versión: 26/09/2024
Nombre de AMI: AMI de aprendizaje profundo del controlador con software de código abierto de Nvidia - GPU PyTorch 2.4.1 (Ubuntu 22.04) 20240925
Se agregó
-
Versión inicial de la serie de AMI de aprendizaje profundo - GPU PyTorch 2.4.1 (Ubuntu 22.04). Incluye un entorno de conda pytorch complementado con el controlador NVIDIA R550, CUDA=12.4.1, CUDNN=8.9.7, PyTorch NCCL=2.20.5 y EFA=1.34.0.