すべてのプロダクト
Search
ドキュメントセンター

Container Compute Service:training-nv-pytorch 25.04 リリースノート

最終更新日:May 07, 2025

このトピックでは、training-nv-pytorch 25.04 のリリースノートについて説明します。

主な機能とバグ修正リスト

主な機能

  • ベースイメージは NGC 25.03 に合わせ、CUDA は 12.8.1 に、TransformerEngine は 2.1 にアップグレードされました。

  • Triton は 3.2.0 に、accelerate は 1.6.0+ali に対応し、対応するバージョンの機能とバグ修正が統合されています。

  • vLLM は最新のコミュニティバージョン 0.8.5 に、flashinfer-python は 0.2.5 に、Transformers は 4.51.2+ali にアップグレードされ、Qwen3 をサポートしています。

バグ修正

なし

コンテンツ

シナリオ

トレーニング/推論

フレームワーク

pytorch

要件

NVIDIA ドライバー リリース>= 570

コアコンポーネント

  • Ubuntu 24.04

  • Python 3.12.7+gc

  • Torch 2.6.0.7

  • CUDA 12.8.0

  • ACCL-N 2.23.4.12

  • triton 3.2.0

  • TransformerEngine 2.1

  • deepspeed 0.15.4+ali

  • flash-attn 2.7.2

  • flashattn-hopper 3.0.0b1

  • transformers 4.51.2+ali

  • megatron-core 0.9.0

  • grouped_gemm 1.1.4

  • accelerate 1.6.0+ali

  • diffusers 0.31.0

  • openmim 0.3.9

  • mmengine 0.10.3

  • mmcv 2.1.0

  • mmdet 3.3.0

  • opencv-python-headless 4.10.0.84

  • ultralytics 8.2.74

  • timm 1.0.13

  • mmdet 3.3.0

  • vllm 0.8.5+cu128

  • flashinfer 0.2.5

  • pytorch-dynamic-profiler 0.24.11

  • perf 5.4.30

  • gdb 15.0.50

  • peft 0.13.2

  • ray 2.43.0

アセット

25.04

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

VPC イメージ

  • acs-registry-vpc.{region-id}.cr.aliyuncs.com/egslingjun/{image:tag}

    {region-id} は、ACS がアクティブ化されているリージョン (cn-beijing など) を示します。
    {image:tag} は、イメージの名前とタグを示します。
重要

現在、VPC 経由でプルできるイメージは、中国 (北京) リージョンのイメージのみです。

説明
  • egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:25.04-serverless イメージは、ACS プロダクトフォームと Lingjun マルチテナントプロダクトフォームに適していますが、Lingjun シングルテナントプロダクトフォームには適していません。

  • egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:25.04 イメージは、Lingjun シングルテナントシナリオに適しています。

ドライバー要件

  • 25.04 リリースは、NGC pytorch 25.03 イメージバージョンアップデートに合わせています (NGC は毎月月末にイメージをリリースするため、ゴールデンイメージの開発月は前月の NGC バージョンに基づくことしかできません)。そのため、Golden-gpu ドライバーは、対応する NGC イメージバージョンの要件に従います。このリリースは CUDA 12.8.1.012 に基づいており、NVIDIA ドライバーバージョン 570 以上が必要です。ただし、データセンター GPU (T4 やその他のデータセンター GPU など) で実行している場合は、NVIDIA ドライバーバージョン 470.57 (またはそれ以降の R470)、525.85 (またはそれ以降の R525)、535.86 (またはそれ以降の R535)、または 545.23 (またはそれ以降の R545) を使用できます。

  • CUDA ドライバー互換性パッケージは、特定のドライバーのみをサポートしています。そのため、ユーザーは、CUDA 12.8 と上位互換性のないすべての R418、R440、R450、R460、R510、R520、R530、R545、R555、および R560 ドライバーからアップグレードする必要があります。サポートされているドライバーの完全なリストについては、「CUDA アプリケーションの互換性」のトピックを参照してください。詳細については、「CUDA の互換性とアップグレード」を参照してください。

主な機能と拡張機能

PyTorch コンパイルの最適化

PyTorch 2.0 で導入されたコンパイル最適化機能は、1 つの GPU での小規模トレーニングに適しています。ただし、LLM トレーニングには、GPU メモリの最適化と、FSDP や DeepSpeed などの分散フレームワークが必要です。その結果、torch.compile() はトレーニングにメリットをもたらすことができず、デメリットが生じる可能性があります。

  • DeepSpeed フレームワークで通信の粒度を制御すると、コンパイラはより広範囲のコンパイル最適化のための完全な計算グラフを取得できます。

  • 最適化された PyTorch:

    • PyTorch コンパイラのフロントエンドが最適化され、計算グラフでグラフの切断が発生した場合にコンパイルが確実に行われるようになりました。

    • モードマッチングと動的シェイプ機能が強化され、コンパイル済みコードが最適化されました。

上記の最適化後、8B LLM をトレーニングする場合の E2E スループットが 20% 向上しました。

再計算のための GPU メモリの最適化

さまざまなクラスターにデプロイされたモデル、またはさまざまなパラメーターで構成されたモデルのパフォーマンステストを実行し、GPU メモリ使用率などのシステムメトリックを収集することにより、モデルの GPU メモリ消費量を予測および分析します。結果に基づいて、最適なアクティベーション再計算レイヤー数を提案し、PyTorch に統合します。これにより、ユーザーは GPU メモリの最適化を簡単に活用できます。現在、この機能は DeepSpeed フレームワークで使用できます。

ACCL

ACCL は、Alibaba Cloud が Lingjun 向けに提供する社内 HPN 通信ライブラリです。GPU アクセラレーションシナリオ向けに ACCL-N を提供します。ACCL-N は、NCCL に基づいてカスタマイズされた HPN ライブラリです。NCCL と完全に互換性があり、NCCL のいくつかのバグを修正しています。ACCL-N は、より高いパフォーマンスと安定性も提供します。

E2E パフォーマンスメリット評価

クラウドネイティブ AI パフォーマンス評価および分析ツール CNP を使用すると、主流のオープンソースモデルとフレームワークを標準ベースイメージと共に使用して、E2E パフォーマンスを分析できます。さらに、アブレーションスタディを使用して、各最適化コンポーネントがモデルトレーニング全体にどのようにメリットをもたらすかをさらに評価できます。

GPU コアコンポーネントの E2E パフォーマンス貢献分析

次のテストは Golden-25.04 に基づいており、マルチノード GPU クラスターで E2E パフォーマンス評価と比較分析を実施しています。比較項目は次のとおりです。

  1. ベース: NGC PyTorch イメージ

  2. ACS AI イメージ: ベース+ACCL: ACCL 通信ライブラリを使用するイメージ

  3. ACS AI イメージ: AC2+ACCL: AC2 BaseOS を使用したゴールデンイメージ (最適化は有効になっていません)

  4. ACS AI イメージ: AC2+ACCL+CompilerOpt: AC2 BaseOS を使用したゴールデンイメージ (torch コンパイル最適化のみが有効になっています)

  5. ACS AI イメージ: AC2+ACCL+CompilerOpt+CkptOpt: AC2 BaseOS を使用したゴールデンイメージ (torch コンパイルと選択的勾配チェックポイント最適化の両方が有効になっています)

image.png

クイックスタート

次の例では、Docker のみを使用して training-nv-pytorch イメージをプルします。

説明

ACS で training-nv-pytorch イメージを使用するには、ワークロードを作成するコンソールのアーティファクトセンターページからプルするか、YAML ファイルでイメージを指定する必要があります。

1. イメージを選択する

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

2. API を呼び出して、コンパイルの最適化と再計算のための GPU メモリの最適化を有効にする

  • コンパイルの最適化を有効にする

    transformers Trainer API を使用する:

    image.png

  • 再計算のための GPU メモリの最適化を有効にする

    export CHECKPOINT_OPTIMIZATION=true

3. コンテナを起動する

イメージには、ljperf という名前の組み込みモデルトレーニングツールが用意されており、コンテナを起動してトレーニングタスクを実行する手順を示しています。

LLM

# コンテナを起動し、コンテナにログインします。
docker run --rm -it --ipc=host --net=host  --privileged egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:[tag]

# トレーニングデモを実行します。
ljperf benchmark --model deepspeed/llama3-8b 

4. 提案

  • イメージの変更には、PyTorch ライブラリと DeepSpeed ライブラリが含まれます。再インストールしないでください。

  • DeepSpeed 構成の zero_optimization.stage3_prefetch_bucket_size は空のままにするか、auto に設定します。

既知の問題

  • イメージは PyTorch 2.6 にアップグレードされており、LLM タイプのモデルの再計算メモリ最適化のパフォーマンスメリットは、以前のイメージほど良くありません。継続的な最適化が進行中です。