All Products
Search
Document Center

Container Compute Service:training-nv-pytorch 25.06

Last Updated:Jun 20, 2026

These release notes describe the updates for training-nv-pytorch 25.06.

What's new

New features

  • This release upgrades PyTorch and related components to v2.7.1.8, Triton to v3.3.0, and vLLM to v0.9.1, adding support for the new Blackwell architecture.

Bug fixes

  • Upgraded PyTorch to v2.7.1.8 to fix degraded VRAM optimization performance in older images.

Image details

Scenario

Training/inference

Framework

PyTorch

Requirements

NVIDIA driver version 575 or later

Core components

  • Ubuntu 24.04

  • Python 3.12.7+gc

  • Torch 2.7.1.8+nv25.3

  • CUDA 12.8.0

  • ACCL-N 2.23.4.12

  • triton 3.3.0

  • TransformerEngine 2.3.0+5de3e14

  • deepspeed 0.16.9+ali

  • flash-attn 2.7.2

  • flashattn-hopper 3.0.0b1

  • transformers 4.51.2+ali

  • megatron-core 0.12.1

  • grouped_gemm 1.1.4

  • accelerate 1.7.0+ali

  • diffusers 0.31.0

  • mmengine 0.10.3

  • mmcv 2.1.0

  • mmdet 3.3.0

  • opencv-python-headless 4.10.0.84

  • ultralytics 8.3.96

  • timm 1.0.15

  • vllm 0.9.1

  • flashinfer-python 0.2.5

  • pytorch-dynamic-profiler 0.24.11

  • perf 5.4.30

  • gdb 15.0.50

  • peft 0.13.2

  • ray 2.47.1

Available images

25.06

  • egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:25.06-serverless

VPC image

acs-registry-vpc.{region-id}.cr.aliyuncs.com/egslingjun/{image:tag}
Replace {region-id} with the region where your Alibaba Cloud Container Compute Service (ACS) is activated (for example, cn-beijing or cn-wulanchabu).
Replace {image:tag} with the name and tag of the image.
Note

The inference-nv-pytorch:25.03-vllm0.8.2-pytorch2.6-cu124-20250328-serverless and inference-nv-pytorch:25.03-sglang0.4.4.post1-pytorch2.5-cu124-20250327-serverless images are compatible with ACS and Lingjun multi-tenant deployments only. It is not compatible with Lingjun single-tenant deployments.

Note

The egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:25.06-serverless image is suitable for Alibaba Cloud Container Compute Service (ACS) and Lingjun multi-tenant service models. This image is not suitable for the Lingjun single-tenant service model and must not be used in Lingjun single-tenant scenarios.

Driver requirements

  • The 25.06 release is based on CUDA 12.8.0 and requires NVIDIA driver version 575 or later. However, if you are running on a data center GPU (such as a T4), you can use NVIDIA driver versions 470.57 (or later in the R470 branch), 525.85 (or later in the R525 branch), 535.86 (or later in the R535 branch), or 545.23 (or later in the R545 branch).

  • The CUDA driver compatibility package supports only specific driver branches. Therefore, you must upgrade any drivers from the R418, R440, R450, R460, R510, R520, R530, R545, R555, and R560 branches. These branches are not forward-compatible with CUDA 12.8. For a complete list of supported drivers, see the CUDA Application Compatibility topic. For more information, see CUDA Compatibility and Upgrades.

Key features and enhancements

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 evaluation

Comprehensive end-to-end performance comparisons were conducted with the Cloud Native Platform (CNP) AI performance analysis tool, benchmarking this image against a standard base image with mainstream open-source models and framework configurations. In addition, ablation studies evaluated the performance contribution of each optimization component to the overall model training.

E2E performance contribution of GPU core components

The following tests were run on a multi-node GPU cluster to compare end-to-end training performance across the following configurations:

  1. Base: NGC PyTorch Image

  2. Base+ACCL: Base image with ACCL.

  3. ACS AI Image: AC2+ACCL: AC2 BaseOS with ACCL and no other optimizations.

  4. ACS AI Image: AC2+ACCL+CompilerOpt: AC2 BaseOS with ACCL and torch.compile optimization.

  5. ACS AI Image: AC2+ACCL+CompilerOpt+CkptOpt: AC2 BaseOS with ACCL, torch.compile, and selective gradient checkpointing optimizations.

image.png

Quick start

The following example shows how to pull the training-nv-pytorch image by using Docker.

Note

To use the training-nv-pytorch image in Alibaba Cloud Container Compute Service (ACS), select the image from the Artifact Center page in the console when creating a workload, or specify the image reference in a YAML file.

1. Pull the image

docker pull egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:[tag]

2. Enable compiler and selective gradient checkpointing

  • Enable compilation optimization

    Use the Transformers Trainer API:

    training_args = TrainingArguments(
        bf16=True,
        gradient_checkpointing=True,
        torch_compile=True
    )
  • Enable selective gradient checkpointing

    export CHECKPOINT_OPTIMIZATION=true

3. Start the container

This section uses the built-in model training tool ljperf to describe the steps for starting a container and running a training task.

LLM example

# Start the container and enter its command line
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 

4. Usage notes

  • The image contains modified versions of libraries such as PyTorch and DeepSpeed. Do not reinstall them.

  • In your DeepSpeed configuration, leave zero_optimization.stage3_prefetch_bucket_size empty or set it to auto.

  • The built-in environment variable NCCL_SOCKET_IFNAME in this image must be dynamically adjusted based on the use case:

    • When a single Pod requests only 1, 2, 4, or 8 GPUs for training or inference tasks, you need to set NCCL_SOCKET_IFNAME=eth0 (the default configuration in this image).

    • When a single Pod requests all 16 GPUs on an entire machine for training or inference tasks (which allows you to use HPN high-performance networking), you must set NCCL_SOCKET_IFNAME=hpn0.

Known issues

None.