All Products
Search
Document Center

Container Compute Service:training-nv-pytorch 26.05

Last Updated:Jun 03, 2026

These release notes describe the training-nv-pytorch 26.05 release.

Main features and bug fixes

Main features

  • Upgraded Torch-related components to version 2.11.0.

  • Upgraded the built-in training components, megatron-core to 0.17.0 and transformer_engine to 2.14.

  • Upgraded the vllm inference component to version 0.20.2.

Bug fixes

None for this release.

Contents

Image name

training-nv-pytorch

Tag

26.05-cu130-serverless

Use cases

training/inference

Framework

pytorch

Requirements

NVIDIA Driver release >= 580

NVIDIA Driver release >= 580

Supported architectures

amd64

aarch64

Core components

  • Ubuntu: 24.04

  • Python: 3.12.7+gc

  • CUDA: 13.0

  • perf: 5.4.30

  • gdb: 15.1

  • torch: 2.11.0+ali.11.nv25.10

  • triton: 3.6.0

  • transformer_engine: 2.14.0+f031cf87

  • deepspeed: 0.18.8+ali

  • flash_attn: 2.8.3

  • transformers: 4.57.6+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.27

  • vllm: 0.20.2

  • flashinfer-python: 0.6.8.post1

  • pytorch-dynamic-profiler: 0.24.11

  • peft: 0.19.1

  • megatron-core: 0.17.0

  • Ubuntu: 24.04

  • Python: 3.12.7+gc

  • CUDA: 13.0

  • gdb: 15.1

  • torch: 2.11.0+ali.11.nv25.10

  • triton: 3.6.0

  • transformer_engine: 2.14.0+f031cf87

  • deepspeed: 0.18.8+ali

  • flash_attn: 2.8.3

  • transformers: 4.57.6+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.27

  • vllm: 0.20.2

  • flashinfer-python: 0.6.8.post1

  • pytorch-dynamic-profiler: 0.24.11

  • peft: 0.19.1

  • megatron-core: 0.17.0

Assets

Public image

CUDA 13.0.2 (Driver >=580, amd64 & aarch64)

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

VPC image

To pull ACS AI container images from within a VPC for faster access, replace the public image URI egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/{image:tag} with acs-registry-vpc.{region-id}.cr.aliyuncs.com/egslingjun/{image:tag}.

  • {region-id}: The ID of an ACS available region. Examples: cn-beijing, cn-wulanchabu.

  • {image:tag}: The name and tag of the AI container image. Examples: inference-nv-pytorch:25.10-vllm0.11.0-pytorch2.8-cu128-20251028-serverless, training-nv-pytorch:25.10-serverless.

Note

This image is suitable for ACS products and Lingjun multi-tenant environments. It is not compatible with Lingjun single-tenant environments.

Driver requirements

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.

E2E performance evaluation

We used CNP, a cloud-native AI performance benchmarking and analysis tool, to conduct a comprehensive end-to-end performance comparison against the standard base image using mainstream open-source models and framework configurations. We also performed ablation studies to evaluate the contribution of each optimized component to the overall training performance.

Image vs. base image & iterative evaluation

image

GPU core components E2E performance contribution analysis

We conducted the following tests on a multi-node GPU cluster to evaluate and compare the E2E training performance of this image release. The comparison configurations include:

  1. Base: The NGC PyTorch image.

  2. ACS AI image: Base+ACCL: The base image with the ACCL communication library.

  3. ACS AI image: AC2+ACCL: The golden image using AC2 BaseOS with no optimizations enabled.

  4. ACS AI image: AC2+ACCL+CompilerOpt: The golden image using AC2 BaseOS with only the torch.compile optimization enabled.

  5. ACS AI image: AC2+ACCL+CompilerOpt+CkptOpt: The golden image using AC2 BaseOS with both torch.compile and selective gradient checkpointing optimizations enabled.

image

Quick start

The following example shows how to pull the image by using Docker.

Note

To use the training-nv-pytorch image in ACS, select it from the Artifact Center page when creating a workload, or specify it in a YAML file.

1. Select an image

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

2. Enable compiler and checkpointing via API

  • Enable compilation optimization

    Use the transformers Trainer API:

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

    export CHECKPOINT_OPTIMIZATION=true

3. Start the container

The image has a built-in model training tool named ljperf. This tool is used as an example to demonstrate the steps for starting a container and running a training task.

LLM

# 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-8b 

4. Usage recommendations

  • This image contains modifications to libraries such as PyTorch and DeepSpeed. Do not reinstall them.

  • In the 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 needs to be dynamically adjusted based on the usage scenario:

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

    • When a single Pod requests all 16 GPUs on a machine for training or inference tasks, set NCCL_SOCKET_IFNAME=hpn0 to use the high-performance network (HPN).

Known issues

None for this release.