L'image de conteneur IA training-nv-pytorch 25,11 pour Container Compute Service (ACS) met à niveau ses composants principaux d'entraînement et d'inférence. Elle est disponible en tant qu'image CUDA 13.0.2 et image CUDA 12.8. Vérifiez les versions des composants, les exigences en matière de pilotes et les limites d'utilisation avant de sélectionner l'image pour vos nœuds GPU.
Modifications de cette version
Fonctionnalités et mises à niveau
Architecture et support CUDA — La version 25.11 prend en charge les architectures amd64 et aarch64, ainsi que CUDA 13.0.2 et CUDA 12.8 .
PyTorch — PyTorch passe à la version 2.9, conformément aux versions communautaires.
Composants principaux d'entraînement — Transformers passe à la version 4.57.1, DeepSpeed à la version 0.18.1 et TransformerEngine à la version 2.8, avec prise en charge de Qwen3-VL.
-
Composant principal d'inférence — vLLM passe à la version 0.11.2.
Le support architectural et les versions des composants diffèrent entre les deux variantes d'image. Pour plus de détails, consultez la section Variantes d'image et spécifications.
Corrections de bugs
Aucune correction pour cette version.
Variantes d'image et spécifications
La version 25.11 propose deux variantes d'image. Sélectionnez une variante en fonction de la version du pilote NVIDIA installée sur vos nœuds, de l'architecture CPU de vos nœuds et du fait que votre charge de travail nécessite FlashAttention 3 (fa3). Le tableau suivant répertorie les spécifications de chaque variante.
|
Élément |
Image CUDA 13.0.2 |
Image CUDA 12.8 |
|
Scénarios courants |
Entraînement et inférence |
Entraînement/inférence |
|
Framework |
PyTorch |
PyTorch |
|
Version du pilote NVIDIA |
580 ou ultérieure |
575 ou ultérieure |
|
Architecture |
amd64 et aarch64 |
amd64 |
La compilation directe de fa3 dans l'image CUDA 13.0.2 génère une erreur. Si votre charge de travail nécessite fa3, privilégiez l'image CUDA 12.8, qui inclut flash_attn_3 3.0.0b1. Pour plus de détails, consultez la section Problèmes connus.
Composants principaux de l'image CUDA 13.0.2
Ubuntu : 24,04
Python : 3.12.7+gc
CUDA : 13,0
perf : 5.4.30
gdb : 15.0.50
torch : 2.9.0+ali.10.nv25.10
triton : 3.5.0
transformer_engine : 2.9.0+70f53666
deepspeed : 0.18.1+ali
flash_attn : 2.8.3
transformers : 4.57.1+ali
grouped_gemm : 1.1.4
accelerate : 1.11.0+ali
diffusers : 0.34.0
mmengine : 0.10.3
mmcv : 2.1.0
mmdet : 3.3.0
opencv-python-headless : 4.11.0.86
ultralytics : 8.3.96
timm : 1.0.22
vllm : 0.11.2+cu130
flashinfer-python : 0.5.2
pytorch-dynamic-profiler : 0.24.11
peft : 0.16.0
ray : 2.52.0
megatron-core : 0.14.0
Composants principaux de l'image CUDA 12.8
Ubuntu : 24,04
Python : 3.12.7+gc
CUDA : 12,8
perf : 5.4.30
gdb : 15.0.50
torch : 2.8.0.9+nv25.3
triton : 3.4.0
transformer_engine : 2.9.0
deepspeed : 0.18.1+ali
flash_attn : 2.8.3
flash_attn_3 : 3.0.0b1
transformers : 4.57.1+ali
grouped_gemm : 1.1.4
accelerate : 1.11.0+ali
diffusers : 0.34.0
mmengine : 0.10.3
mmcv : 2.1.0
mmdet : 3.3.0
opencv-python-headless : 4.11.0.86
ultralytics : 8.3.96
timm : 1.0.22
vllm : 0.11.2
flashinfer-python : 0.5.2
pytorch-dynamic-profiler : 0.24.11
peft : 0.16.0
ray : 2.52.0
megatron-core : 0.14.0
Optimisations des performances
Optimisation de la compilation PyTorch
Introduite dans PyTorch 2.0, la fonction torch.compile() offre souvent des gains significatifs pour les charges de travail à petite échelle sur un seul GPU. Cependant, l'entraînement des LLM repose sur l'optimisation de la mémoire GPU et sur des frameworks distribués tels que FSDP ou DeepSpeed. Par conséquent, torch.compile() peut offrir des avantages limités, voire dégrader les performances.
Contrôlez la granularité de la communication dans le framework DeepSpeed. Cela aide le compilateur à capturer un graphe de calcul plus complet et à appliquer des optimisations de compilation plus larges.
-
Utilisez une build PyTorch optimisée :
Le frontend du compilateur PyTorch est amélioré pour garantir que la compilation réussisse même si une rupture de graphe se produit dans le graphe de calcul.
La correspondance de motifs et la prise en charge des formes dynamiques sont renforcées pour améliorer les performances post-compilation.
Grâce à ces optimisations, l'entraînement d'un LLM de 8 milliards de paramètres atteint généralement un gain de débit de bout en bout d'environ 20 %.
Optimisation de la mémoire GPU pour le recalcul
Un modèle prédictif des coûts en mémoire GPU, construit à partir de données de performance à grande échelle (incluant différents modèles, clusters et paramètres d'entraînement, ainsi que des métriques système telles que l'utilisation de la mémoire GPU collectées lors des benchmarks), recommande le nombre optimal de couches de recalcul d'activation. Cette approche est intégrée à PyTorch, vous permettant d'obtenir les gains de performance liés à l'optimisation de la mémoire GPU avec un effort minimal. Cette fonctionnalité est désormais prise en charge dans le framework DeepSpeed.
Ressources
Images publiques
Le tableau suivant répertorie l'URI de ressource de chaque variante d'image 25,11.
|
Variante d'image |
URI de ressource |
|
Image CUDA 13.0.2 |
|
|
Image CUDA 12.8 |
|
Images VPC
Remplacez l'URI de ressource de l'image de conteneur IA egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/{image:tag} spécifié dans le fichier YAML de la console ACS par acs-registry-vpc.{region-id}.cr.aliyuncs.com/egslingjun/{image:tag} pour extraire rapidement les images de conteneur IA PG1 via le VPC.
Où
{region-id}représente la région disponible où votre service ACS est activé, telle que cn-beijing ou cn-wulanchabu.{image:tag}correspond au nom et au tag de l'image.
Prérequis et limites
L'image training-nv-pytorch 25,11 convient à ACS et à Lingjun multi-locataire. Elle ne convient pas à Lingjun mono-locataire. Ne l'utilisez pas dans des scénarios Lingjun mono-locataire.
Avant d'extraire ou de déployer l'image training-nv-pytorch 25,11, examinez les exigences et limites suivantes :
Version du pilote NVIDIA — La version 25.11 prend en charge CUDA 12.8.0 et CUDA 13.0.2 sur différentes versions de pilotes NVIDIA. CUDA 13.0.2 nécessite la version 580 ou ultérieure du pilote NVIDIA, tandis que CUDA 12.8.0 nécessite la version 575 ou ultérieure. Pour obtenir la liste complète des pilotes pris en charge, consultez la page Compatibilité des applications CUDA. Pour plus d'informations sur les mises à niveau des pilotes, consultez la page Compatibilité et mises à niveau CUDA.
Bibliothèques préinstallées — Cette image inclut des modifications apportées à des bibliothèques telles que PyTorch et DeepSpeed. Ne les réinstallez pas.
Configuration DeepSpeed — Dans la configuration DeepSpeed, laissez
zero_optimization.stage3_prefetch_bucket_sizevide ou définissez-le surauto.-
Interface réseau pour NCCL — Ajustez la variable d'environnement intégrée
NCCL_SOCKET_IFNAMEde cette image en fonction de votre scénario :Si un seul pod demande uniquement 1, 2, 4 ou 8 GPU pour une tâche d'entraînement ou d'inférence, définissez
NCCL_SOCKET_IFNAME=eth0. Il s'agit de la configuration par défaut de cette image.Si un seul pod demande les 16 GPU d'un nœud pour une tâche d'entraînement ou d'inférence, ce qui vous permet d'utiliser le réseau haute performance (HPN), définissez
NCCL_SOCKET_IFNAME=hpn0.
Démarrage rapide
Utilisez l'image training-nv-pytorch de l'une des manières suivantes :
Charge de travail ACS — Sélectionnez l'image sur la page Artifact Center de la page de création de charge de travail dans la console, ou spécifiez la référence de l'image dans un fichier YAML.
-
Docker — Extrayez l'image et exécutez-la avec Docker. Les étapes suivantes décrivent uniquement cette méthode.
Avant de commencer, consultez la section Prérequis et limites.
Étape 1 : Extraire l'image
Exécutez la commande suivante pour extraire l'image training-nv-pytorch :
docker pull egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:[tag]
Remplacez [tag] par le tag de la variante d'image que vous avez sélectionnée. Pour connaître les tags disponibles, consultez la section Images publiques.
Étape 2 : Démarrer le conteneur et exécuter une tâche d'entraînement
L'image inclut l'outil d'entraînement de modèles intégré ljperf. L'exemple suivant démarre le conteneur et utilise cet outil pour exécuter une démonstration d'entraînement pour un LLM :
# Start the container and enter it.
docker run --rm -it --ipc=host --net=host --privileged egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:[tag]
# Run the training demo.
ljperf benchmark --model deepspeed/llama3-8b
Étape 3 : Activer l'optimisation du compilateur et l'optimisation de la mémoire GPU pour le recalcul
Activez l'optimisation du compilateur via l'API Transformers Trainer :
training_args = TrainingArguments(
bf16=True,
gradient_checkpointing=True,
torch_compile=True
)
Activez l'optimisation de la mémoire GPU pour le recalcul en définissant la variable d'environnement suivante :
export CHECKPOINT_OPTIMIZATION=true
Évaluation des performances de bout en bout
En utilisant des modèles open source grand public et des configurations de framework, l'outil de benchmarking des performances d'IA cloud-native (CNP) a effectué une comparaison complète des performances de bout en bout (E2E) par rapport à une image de base standard. Une étude d'ablation a également été utilisée pour évaluer davantage la contribution de chaque composant d'optimisation aux performances globales de l'entraînement du modèle.
Comparaison d'images par rapport à l'image de base et évaluation itérative

Analyse de la contribution des performances E2E des composants GPU principaux
Les tests suivants sont basés sur Golden-25,11 et évaluent et comparent les performances d'entraînement de bout en bout sur un cluster GPU multi-nœuds. Les éléments de comparaison sont les suivants :
Base : L'image NGC PyTorch.
Image IA ACS : Base+ACCL : L'image utilise la bibliothèque de communication ACCL.
Image IA ACS : AC2+ACCL : L'image Golden utilise AC2 BaseOS sans optimisations activées.
Image IA ACS : AC2+ACCL+CompilerOpt : L'image Golden utilise AC2 BaseOS avec uniquement l'optimisation de compilation torch activée.
-
Image IA ACS : AC2+ACCL+CompilerOpt+CkptOpt : L'image Golden utilise AC2 BaseOS avec les optimisations de compilation torch et de point de contrôle sélectif activées.

Problèmes connus
La compilation directe de fa3 dans l'image CUDA 13.0.2 de la version 25.11 génère une erreur. Il s'agit d'un problème connu de la communauté. Pour obtenir des conseils sur le choix entre l'image CUDA 13.0.2 et l'image CUDA 12.8, consultez la section Variantes d'image et spécifications.