This page covers what's new in the training-nv-pytorch container image version 26.01.
What's new
Component upgrades:
megatron-core upgraded to 0.15.0
vLLM upgraded to 0.13.0
flashinfer-python upgraded to 0.5.3
health_check upgraded for compatibility with shuttle 1.5.3
Bug fixes: None.
Image contents
training-nv-pytorch | ||
Tag |
|
|
Scenarios | Training/Inference | Training/Inference |
Framework | PyTorch | PyTorch |
NVIDIA driver requirement | ≥ 580 | ≥ 575 |
Supported architectures | amd64 & aarch64 | amd64 |
Core components
Component | 26.01-cu130-serverless | 26.01-cu128-serverless |
Ubuntu | 24.04 | 24.04 |
Python | 3.12.7+gc | 3.12.7+gc |
CUDA | 13.0 | 12.8 |
perf | 5.4.30 | 5.4.30 |
gdb | 15.0.50.20240403-git | 15.0.50.20240403-git |
torch | 2.9.0+ali.10.nv25.10 | 2.9.0+ali.10.nv25.3 |
triton | 3.5.0 | 3.5.0 |
transformer_engine | 2.10.0+769ed778 | 2.10.0+769ed778 |
deepspeed | 0.18.1+ali | 0.18.1+ali |
flash_attn | 2.8.3 | 2.8.3 |
flash_attn_3 | — | 3.0.0b1 |
transformers | 4.57.1+ali | 4.57.1+ali |
grouped_gemm | 1.1.4 | 1.1.4 |
accelerate | 1.11.0+ali | 1.11.0+ali |
diffusers | 0.34.0 | 0.34.0 |
mmengine | 0.10.3 | 0.10.3 |
mmcv | 2.1.0 | 2.1.0 |
mmdet | 3.3.0 | 3.3.0 |
opencv-python-headless | 4.11.0.86 | 4.11.0.86 |
ultralytics | 8.3.96 | 8.3.96 |
timm | 1.0.24 | 1.0.24 |
vllm | 0.13.0+cu130 | 0.13.0+cu128 |
flashinfer-python | 0.5.3 | 0.5.3 |
pytorch-dynamic-profiler | 0.24.11 | 0.24.11 |
peft | 0.16.0 | 0.16.0 |
ray | 2.53.0 | 2.53.0 |
megatron-core | 0.15.0 | 0.15.0 |
Image assets
Public network
CUDA 13.0.2 (driver ≥ 580, amd64 & aarch64)
egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:26.01-cu130-serverlessCUDA 12.8 (driver ≥ 575, amd64)
egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:26.01-cu128-serverlessVPC
To pull the image over a virtual private cloud (VPC), replace the registry prefix:
Replace | With |
|
|
Where {region-id} is the ID of your Alibaba Cloud Container Compute Service (ACS) region, for example, cn-beijing or cn-wulanchabu. For a full list of supported regions, see Regions and zones.
This image is designed for ACS and Lingjun multi-tenant environments. Do not use it in Lingjun single-tenant environments.
Driver requirements
Release 26.01 supports two CUDA variants with different driver requirements:
CUDA version | Minimum NVIDIA driver |
CUDA 13.0.2 | 580 |
CUDA 12.8.0 | 575 |
For the full driver compatibility matrix, see CUDA Application Compatibility and CUDA Compatibility and Upgrades.
Key features and enhancements
PyTorch compiling optimization
torch.compile(), introduced in PyTorch 2.0, is effective for single-GPU training but provides limited or negative benefit for large language model (LLM) training, which depends on GPU memory optimization and distributed frameworks such as Fully Sharded Data Parallel (FSDP) or DeepSpeed.
This release improves torch.compile() for distributed LLM training through two optimizations:
Communication granularity control in DeepSpeed: Controlling communication granularity gives the compiler a complete compute graph, enabling wider compiling optimization.
Frontend improvements: The PyTorch compiler frontend now compiles even when a graph break occurs, with enhanced mode matching and dynamic shape capabilities.
Result: ~20% higher end-to-end throughput in 8B-parameter LLM training.
GPU memory optimization for recomputation
Based on performance tests across different clusters and parameter configurations, this release integrates the optimal number of activation recomputation layers directly into PyTorch. Enable it with a single environment variable—no manual tuning required.
This feature is available in the DeepSpeed framework.
End-to-end performance evaluation
Performance was measured using CNP, Alibaba Cloud's cloud-native AI performance evaluation and analysis tool. The tests compared mainstream open-source models and framework configurations against a standard base image, with ablation experiments to quantify each optimization's contribution.
Throughput improvement over baseline (image comparison)

Contribution of individual optimization components (version 26.01)
The following chart shows end-to-end training performance on a multi-node GPU cluster across five configurations:
Base: NGC PyTorch Image
ACS AI Image (Base + ACCL): NGC PyTorch Image with the Alibaba Collective Communication Library (ACCL)
ACS AI Image (AC2 + ACCL): Golden image using AC2 BaseOS with ACCL, no further optimizations
ACS AI Image (AC2 + ACCL + CompilerOpt): Golden image using AC2 BaseOS with ACCL and torch compile optimization
ACS AI Image (AC2 + ACCL + CompilerOpt + CkptOpt): Golden image using AC2 BaseOS with ACCL, torch compile optimization, and selective gradient checkpoint

Quick start
The following steps show how to pull and run the training-nv-pytorch image using Docker.
To use this image in ACS, select it from the Artifact Center page when creating a workload in the console, or specify the image reference directly in a YAML file.
1. Pull the image
docker pull egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:[tag]Replace [tag] with the tag for your CUDA version: 26.01-cu130-serverless or 26.01-cu128-serverless.
2. Enable compiler and recomputation optimizations
Compiler optimization — enable via the Transformers Trainer API:

GPU memory optimization via activation recomputation — set the following environment variable before starting your training job:
export CHECKPOINT_OPTIMIZATION=true3. Start the container and run a training job
The image includes ljperf, a built-in model training tool. The following example starts a container and runs an LLM training benchmark:
# Start and enter 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
Library installation
Do not reinstall PyTorch or DeepSpeed. The image contains customized builds of these libraries with ACS-specific optimizations applied. Reinstalling them from the default package index overwrites these optimizations and disables the performance improvements described in this release.
DeepSpeed configuration
Leave zero_optimization.stage3_prefetch_bucket_size blank or set it to auto. Setting a fixed value interferes with the compiler's ability to optimize the compute graph.
NCCL network interface configuration
The Network Collective Communication Library (NCCL) socket interface must match the GPU allocation of your pod. The built-in NCCL_SOCKET_IFNAME value in this image defaults to eth0, which is correct for most configurations. Change it only when running a full-node (16-card) workload that uses the high-performance network (HPN):
GPU cards per pod |
| Notes |
1, 2, 4, or 8 |
| Default configuration in this image |
16 (full node) |
| Use when HPN is available |
Known issues
None.