training-nv-pytorch 25.05
Release notes for the training-nv-pytorch 25.05 image, including what's new, component versions, image tags, driver requirements, key features, and quick start instructions.
What's new
Features
The base image CUDA is upgraded to 12.9.0.
Bug fixes
PyTorch is upgraded to 2.6.0.7.post1, which fixes the profile crash issue in the open-source community.
Image contents
Scenario | Training/Inference |
Framework | PyTorch |
Requirements | NVIDIA driver release >= 575 |
Core components:
Component | Version |
Ubuntu | 24.04 |
Python | 3.12.7+gc |
2.6.0.7.post1 | |
12.9.0 | |
2.26.5.12 | |
3.2.0 | |
2.1 | |
0.15.4+ali | |
2.7.2 | |
3.0.0b1 | |
4.51.2+ali | |
0.9.0 | |
1.1.4 | |
1.6.0+ali | |
0.31.0 | |
0.3.9 | |
0.10.3 | |
2.1.0 | |
3.3.0 | |
4.10.0.84 | |
8.2.74 | |
1.0.13 | |
0.8.5+cu128 | |
0.2.5 | |
0.24.11 | |
perf | 5.4.30 |
gdb | 15.0.50 |
0.13.2 | |
2.46.0 |
Image tags
25.05
egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:25.05-serverlessVPC image
acs-registry-vpc.{region-id}.cr.aliyuncs.com/egslingjun/{image:tag}Replace the placeholders with actual values:
Placeholder | Description | Example |
| The region where your Alibaba Cloud Container Compute Service (ACS) is activated |
|
| The image name and tag |
|
training-nv-pytorch:25.05-serverlessis for ACS services and Lingjun multi-tenant services. Do not use it in Lingjun single-tenant scenarios.training-nv-pytorch:25.05(without-serverless) is for Lingjun single-tenant scenarios.
Driver requirements
Release 25.05 is based on CUDA 12.9.0 and requires NVIDIA driver version 575 or higher.
Data center GPU exception: For data center GPUs such as T4, you can use driver versions 470.57 (R470+), 525.85 (R525+), 535.86 (R535+), or 545.23 (R545+).
Drivers that require upgrading: R418, R440, R450, R460, R510, R520, R530, R545, R555, and R560 are not forward compatible with CUDA 12.8 and must be upgraded.
For complete driver compatibility information, see:
Release 25.05 aligns with the NGC PyTorch 25.04 image version. NGC releases images at the end of each month, so Golden image development is based on the previous month's NGC version.
Key features
PyTorch compilation optimization
torch.compile(), introduced in PyTorch 2.0, often delivers strong gains for small-scale, single-GPU workloads. But LLM training depends on GPU memory optimization and distributed frameworks such as FSDP or DeepSpeed, so torch.compile() may offer limited benefits or even degrade performance.
-
Control communication granularity in the DeepSpeed framework. This helps the compiler capture a more complete compute graph and apply broader compilation optimizations.
-
Use an optimized PyTorch build:
-
The PyTorch compiler frontend is improved to ensure that compilation succeeds even if a graph break occurs in the compute graph.
-
Pattern matching and dynamic shape support are strengthened to improve post-compilation performance.
-
With these optimizations, 8B-parameter LLM training typically achieves an end-to-end throughput gain of about 20%.
GPU memory optimization for recomputation
A predictive model for GPU memory overhead, built on large-scale performance data—including different models, clusters, and training parameter settings, as well as system metrics such as GPU memory utilization collected during benchmarking—recommends the optimal number of activation recomputation layers. This approach is integrated into PyTorch, allowing you to achieve the performance gains of GPU memory optimization with minimal effort. This feature is now supported in the DeepSpeed framework.
ACCL
ACCL is Alibaba Cloud’s high-performance communication library built for Lingjun. ACCL-N is the GPU-focused version. ACCL-N is a high-performance communication library customized from NVIDIA NCCL. It is fully compatible with NCCL, fixes issues in the upstream NCCL release, and includes performance and stability improvements.
End-to-end performance assessment
The following tests use the cloud-native AI performance assessment and analysis tool CNP with mainstream open-source models and frameworks together with standard base images to analyze end-to-end performance. An ablation study is used to assess how each optimization component contributes to overall model training performance. Tests are run on Golden-25.05 on multi-node GPU clusters:
Configuration | Description |
Base | NGC PyTorch image |
ACS AI Image: Base + ACCL | ACS AI image with the ACCL communication library |
ACS AI Image: AC2 + ACCL | Golden image on AC2 Base OS, no optimizations enabled |
ACS AI Image: AC2 + ACCL + CompilerOpt | Golden image on AC2 Base OS with |
ACS AI Image: AC2 + ACCL + CompilerOpt + CkptOpt | Golden image on AC2 Base OS with |

Quick start
The following example uses Docker to pull and run the training-nv-pytorch image.
To use the training-nv-pytorch image in ACS, pull it from the artifact center page in the console when creating workloads, or specify the image in a YAML file.
1. Pull the image
docker pull egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:[tag]2. Enable optimizations
Enable compiling optimization
Use the transformers Trainer API:

Enable GPU memory optimization for activation recomputation
export CHECKPOINT_OPTIMIZATION=true3. Launch a container
The image includes ljperf, a built-in model training tool for launching containers and running training tasks.
LLM example:
# Launch a container and log on to the container.
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-8bUsage notes
This release modifies the PyTorch and DeepSpeed libraries. Do not reinstall them.
Leave
zero_optimization.stage3_prefetch_bucket_sizeblank or set it toautoin your DeepSpeed configuration.
Known issues
PyTorch is upgraded to 2.6 in this release. The performance benefit of activation recomputation memory optimization for LLM models is lower than in previous images. Optimization is ongoing.