training-nv-pytorch イメージのバージョン 26.03 では、torch を 2.10 に、vllm を 0.17.0 に、megatron-core を 0.16.0 に、deepspeed を 0.18.8 に、transformer_engine を 2.12 にアップグレードしました。ACS での GPU トレーニングと推論に、このイメージのコンパイル最適化と再計算によるメモリ最適化をご活用ください。
新機能
ハイライト
torch を 2.10 にアップグレードしました。
vllm を 0.17.0 にアップグレードしました。
megatron-core を 0.16.0 にアップグレードしました。
deepspeed を 0.18.8 にアップグレードしました。
transformer_engine を 2.12 にアップグレードしました。
バグ修正
なし。
イメージの内容
次の表に、各イメージタグの属性を示します。
項目 | 26.03-cu130-serverless | 26.03-cu128-serverless |
イメージ名 | training-nv-pytorch | training-nv-pytorch |
ユースケース | トレーニングと推論 | トレーニングと推論 |
フレームワーク | pytorch | pytorch |
要件 | NVIDIA Driver 580 以降 | NVIDIA Driver 575 以降 |
対応アーキテクチャ | amd64 および aarch64 | amd64 |
コアコンポーネント
26.03-cu130-serverless
Ubuntu:24.04
Python:3.12.7+gc
CUDA:13.0.2
perf:5.4.30
gdb:15.1
torch:2.10.0+ali.10.nv25.10
triton:3.6.0
transformer_engine:2.12.0+5671fd36
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.26
vllm:0.17.0+cu130
flashinfer-python:0.6.4
pytorch-dynamic-profiler:0.24.11
peft:0.16.0
ray:2.54.1
megatron-core:0.16.0
26.03-cu128-serverless
Ubuntu:24.04
Python:3.12.7+gc
CUDA:12.8.0
perf:5.4.30
gdb:15.1
torch:2.10.0+ali.10.nv25.3.pgo
triton:3.6.0
transformer_engine:2.12.0+5671fd36
deepspeed:0.18.8+ali
flash_attn:2.8.3
flash_attn_3:3.0.0b1
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.26
vllm:0.17.0+cu128
flashinfer-python:0.6.4
pytorch-dynamic-profiler:0.24.11
peft:0.16.0
ray:2.54.1
megatron-core:0.16.0
アセット
このイメージは ACS およびマルチテナントの Lingjun 環境と互換性がありますが、シングルテナントの Lingjun 環境とは互換性がありません。
パブリックイメージ
CUDA 13.0.2 (NVIDIA Driver 580 以降、amd64 および aarch64)
egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:26.03-cu130-serverless
CUDA 12.8.0 (NVIDIA Driver 575 以降、amd64)
egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:26.03-cu128-serverless
VPC イメージ
ACS コンソールの YAML ファイルで指定されている AI コンテナイメージアセット URI egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/{image:tag} を acs-registry-vpc.{region-id}.cr.aliyuncs.com/egslingjun/{image:tag} に置き換えることで、VPC 経由で AI コンテナイメージを迅速にプルできます。
ここで、
{region-id}は、ACS が有効化されている利用可能なリージョン (cn-beijing や cn-wulanchabu など) です。{image:tag}は、イメージの名前とタグです。
ドライバー要件
リリース 26.03 は 2 つの CUDA バージョンをサポートしており、それぞれ、最小要件となるドライバーバージョンが指定されています。
CUDA 13.0.2 には NVIDIA Driver 580 以降が必要です。
CUDA 12.8.0 には NVIDIA Driver 575 以降が必要です。
サポートされているドライバーの全リストについては CUDA Application Compatibility を、アップグレードガイダンスについては CUDA Compatibility and Upgrades をご参照ください。
クイックスタート
以下の手順では、Docker を使用してイメージをプルし、ローカルホストでトレーニングデモを実行します。ホストシェルで docker コマンドを実行し、コンテナシェルでトレーニングコマンドを実行します。
ACS でこのイメージを使用するには、コンソールでワークロードを作成する際に [アーティファクトセンター] から選択するか、YAML ファイルでイメージ参照を指定します。
ステップ 1:イメージのプル
ホストシェルで次のコマンドを実行します。
docker pull egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:[tag][tag] を、お使いの NVIDIA ドライバーのバージョンと CPU アーキテクチャに一致するタグ (26.03-cu130-serverless または 26.03-cu128-serverless のいずれか) に置き換えてください。各タグがサポートするドライバーのバージョンとアーキテクチャについては、「イメージの内容」セクションをご参照ください。
ステップ 2:コンテナの起動
ホストシェルで次のコマンドを実行します。このコマンドはコンテナを起動し、コンテナシェルを開きます。残りの手順はこのシェルで実行します。
# コンテナを起動してシェルを開く
docker run --rm -it --ipc=host --net=host --privileged egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:[tag]ステップ 3:最適化の有効化
トレーニングを開始する前に、両方の最適化を有効にします。トレーニングスクリプトでコンパイル最適化を設定し、ステップ 2 で開いたコンテナシェルで再計算によるメモリ最適化を設定します。
コンパイル最適化の有効化
トレーニングスクリプトで、transformers Trainer API を使用して次の引数を設定します。
training_args = TrainingArguments(
bf16=True,
gradient_checkpointing=True,
torch_compile=True
)再計算によるメモリ最適化の有効化
コンテナシェルで、次の環境変数を設定します。
export CHECKPOINT_OPTIMIZATION=trueステップ 4:トレーニングデモの実行
このイメージには、組み込みのモデルトレーニングツールである ljperf が含まれています。コンテナシェルでデモを実行します。
LLM の場合
# トレーニングデモの実行
ljperf benchmark --model deepspeed/llama3-8b使用上の推奨事項
このイメージには、PyTorch や DeepSpeed などの変更されたライブラリが同梱されています。これらを再インストールしないでください。
DeepSpeed の設定で、
zero_optimization.stage3_prefetch_bucket_sizeは空白のままにするか、autoに設定してください。
主な特徴と機能強化
PyTorch コンパイルの最適化
PyTorch 2.0 で導入された torch.compile() は、小規模なシングル GPU のワークロードで大きな効果を発揮することがよくあります。しかし、LLM のトレーニングは GPU メモリの最適化と FSDP や DeepSpeed などの分散フレームワークに依存するため、torch.compile() では限定的な利点しか得られないか、パフォーマンスを低下させる可能性があります。
-
DeepSpeed フレームワークでの通信粒度の制御。これにより、コンパイラがより完全な計算グラフをキャプチャし、より広範なコンパイル最適化を適用できます。
-
最適化された PyTorch ビルドの使用:
-
PyTorch コンパイラのフロントエンドが改善され、計算グラフでグラフブレークが発生した場合でもコンパイルが成功するようになりました。
-
パターンマッチングと動的シェイプのサポートが強化され、コンパイル後のパフォーマンスが向上しました。
-
これらの最適化により、8B パラメーターの LLM トレーニングでは、通常、エンドツーエンドのスループットが約 20% 向上します。
再計算のための GPU メモリの最適化
大規模なパフォーマンスデータ (さまざまなモデル、クラスター、トレーニングパラメーター設定、ベンチマーク中に収集された GPU メモリ使用率などのシステムメトリクスを含む) に基づいて構築された GPU メモリオーバーヘッドの予測モデルは、最適なアクティベーション再計算レイヤー数を推奨します。このアプローチは PyTorch に統合されており、最小限の労力で GPU メモリの最適化によるパフォーマンス向上を実現できます。この機能は、DeepSpeed フレームワークでサポートされるようになりました。
E2E パフォーマンス評価
このイメージは、クラウドネイティブな AI パフォーマンス評価・分析ツールである CNP を使用し、主流のオープンソースモデルとフレームワーク構成を用いて、標準のベースイメージと比較するベンチマークを実施しました。アブレーション実験により、各最適化コンポーネントがモデル全体のトレーニングパフォーマンスにどの程度貢献しているかが示されています。
ベースイメージとの比較およびイテレーションごとの評価

コア GPU コンポーネントの E2E パフォーマンス貢献度分析
このリリースの以下の構成について、マルチノード GPU クラスター上でのエンドツーエンドのトレーニングパフォーマンスを比較しました。
ベース:公式の NGC PyTorch イメージ。
ACS AI イメージ (Base + ACCL):ベースイメージに ACCL 通信ライブラリを追加したもの。
ACS AI イメージ (AC2 + ACCL):AC2 BaseOS 上のイメージで、ACCL を含みますが、他の最適化は行われていません。
ACS AI イメージ (AC2 + ACCL + CompilerOpt):AC2 BaseOS 上のイメージで、ACCL と
torch.compile最適化のみが有効になっています。ACS AI イメージ (AC2 + ACCL + CompilerOpt + CkptOpt):AC2 BaseOS 上のイメージで、ACCL、
torch.compile、および選択的勾配チェックポイントが有効になっています。

既知の問題
なし。