全部产品
Search
文档中心

Container Compute Service:training-nv-pytorch 25.02

更新时间:Jun 28, 2025

Topik ini menjelaskan catatan rilis untuk training-nv-pytorch 25.02.

Daftar Fitur Utama dan Perbaikan Bug

Fitur Utama

  • Gambar dasar diperbarui untuk mendukung NGC 25.01, CUDA diperbarui ke 12.8.0, dan cuDNN diperbarui ke 9.7.0.66.

  • ACCL-N diperbarui ke 2.23.4.11 dan mendukung ACCL-Barex.

  • Transformers diperbarui ke 4.48.3+ali, vLLM diperbarui ke 0.7.2, dan Ray diperbarui ke 2.42.1 untuk mendukung fitur baru dan memperbaiki bug.

Perbaikan Bug

Tidak ada

Konten

Skenario penggunaan

Pelatihan/inferensi

Kerangka kerja

pytorch

Persyaratan

Rilis NVIDIA Driver >= 570

Komponen utama

  • Ubuntu 24.04

  • Python 3.12.7+gc

  • Torch 2.5.1.6.post2

  • CUDA 12.8.0

  • ACCL-N 2.23.4.11

  • triton 3.1.0

  • TransformerEngine 1.13.0

  • deepspeed 0.15.4+ali

  • flash-attn 2.5.8

  • flashattn-hopper 3.0.0b1

  • transformers 4.48.3+ali

  • megatron-core 0.9.0

  • grouped_gemm 1.1.4

  • accelerate 1.1.0

  • 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.7.2

  • pytorch-dynamic-profiler 0.24.11

  • perf 5.4.30

  • gdb 15.0.50

  • peft 0.13.2

  • ray 2.42.1

Aset

Gambar publik

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

Gambar VPC

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

    {region-id} menunjukkan wilayah tempat ACS Anda diaktifkan, seperti cn-beijing.
    {image:tag} menunjukkan nama dan tag gambar.
Penting

Saat ini, Anda hanya dapat menarik gambar di wilayah China (Beijing) melalui VPC.

Catatan
  • Gambar egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:25.02-serverless cocok untuk produk ACS dan produk multi-tenant Lingjun. Tidak cocok untuk produk single-tenant Lingjun.

  • Gambar egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:25.02 cocok untuk skenario single-tenant Lingjun.

Persyaratan Driver

  • Rilis 25.02 didasarkan pada pembaruan gambar NGC Pytorch 25.01. Oleh karena itu, driver Golden-gpu memenuhi persyaratan pada versi gambar NGC. Rilis ini didasarkan pada CUDA 12.8.0 dan membutuhkan driver NVIDIA 570 atau lebih baru. Jika Anda menjalankannya pada GPU yang digunakan di pusat data Anda, seperti T4, Anda dapat memilih driver NVIDIA 470.57 (atau R470), 525.85 (atau R525), 535.86 (atau R535), atau 545.23 (atau R545).

  • Driver CUDA hanya kompatibel dengan driver tertentu. Oleh karena itu, Anda harus memperbarui versi R418, R440, R450, R460, R510, R520, R530, R545, dan R555. Driver ini tidak kompatibel ke depan dengan CUDA 12.8. Untuk informasi lebih lanjut tentang driver yang didukung, lihat Kompatibilitas aplikasi CUDA. Untuk informasi lebih lanjut, lihat Kompatibilitas dan peningkatan CUDA.

Fitur Utama dan Peningkatan

Optimalisasi kompilasi PyTorch

Fitur optimalisasi kompilasi yang diperkenalkan dalam PyTorch 2.0 cocok untuk pelatihan skala kecil pada satu GPU. Namun, pelatihan LLM membutuhkan optimalisasi memori GPU dan kerangka kerja terdistribusi, seperti FSDP atau DeepSpeed. Akibatnya, torch.compile() tidak dapat memberikan manfaat bagi pelatihan Anda atau bahkan memberikan dampak negatif.

  • Mengontrol granularitas komunikasi dalam kerangka kerja DeepSpeed membantu kompiler mendapatkan grafik komputasi lengkap untuk cakupan optimalisasi kompilasi yang lebih luas.

  • PyTorch dioptimalkan:

    • Frontend kompiler PyTorch dioptimalkan untuk memastikan kompilasi saat terjadi pemutusan grafik apa pun dalam grafik komputasi.

    • Kemampuan pencocokan mode dan bentuk dinamis ditingkatkan untuk mengoptimalkan kode yang dikompilasi.

Setelah optimalisasi di atas, throughput E2E meningkat sebesar 20% saat LLM 8B dilatih.

Optimalisasi memori GPU untuk rekompilasi

Kami memperkirakan dan menganalisis konsumsi memori GPU model dengan menjalankan tes kinerja pada model yang diterapkan di kluster berbeda atau dikonfigurasi dengan parameter berbeda dan mengumpulkan metrik sistem, seperti pemanfaatan memori GPU. Berdasarkan hasil tersebut, kami menyarankan jumlah lapisan rekompilasi aktivasi yang optimal dan mengintegrasikannya ke dalam PyTorch. Ini memungkinkan pengguna dengan mudah mendapatkan manfaat dari optimalisasi memori GPU. Saat ini, fitur ini dapat digunakan dalam kerangka kerja DeepSpeed.

ACCL

ACCL adalah pustaka komunikasi HPN internal yang disediakan oleh Alibaba Cloud untuk Lingjun. Ini menyediakan ACCL-N untuk skenario akselerasi GPU. ACCL-N adalah pustaka HPN yang disesuaikan berdasarkan NCCL. Ini sepenuhnya kompatibel dengan NCCL dan memperbaiki beberapa bug di NCCL. ACCL-N juga memberikan kinerja dan stabilitas yang lebih tinggi.

Analisis manfaat kinerja E2E

Dengan alat penilaian dan analisis kinerja AI cloud-native CNP, kami dapat menggunakan model sumber terbuka utama dan kerangka kerja bersama dengan gambar dasar standar untuk menganalisis kinerja E2E. Selain itu, kami dapat menggunakan studi ablasi untuk menilai lebih lanjut bagaimana setiap komponen optimalisasi memberikan manfaat bagi pelatihan model secara keseluruhan.

Analisis manfaat kinerja E2E komponen inti GPU

Uji berikut didasarkan pada 25.02. Penilaian dan perbandingan kinerja E2E dilakukan untuk kluster GPU multi-node yang dipercepat.

  1. Dasar: Gambar NGC PyTorch.

  2. ACS AI Image: Base+ACCL: ACCL yang digunakan oleh gambar.

  3. ACS AI Image: AC2+ACCL: Gambar Golden menggunakan AC2 BaseOS, tanpa optimalisasi apa pun.

  4. ACS AI Image: AC2+ACCL+CompilerOpt: Gambar Golden menggunakan AC2 BaseOS, dengan hanya optimalisasi kompilasi PyTorch yang diaktifkan.

  5. ACS AI Image: AC2+ACCL+CompilerOpt+CkptOpt: Gambar Golden menggunakan AC2 BaseOS, dengan optimalisasi kompilasi PyTorch dan optimalisasi titik kontrol gradien selektif yang diaktifkan.

image.png

Memulai Cepat

Contoh berikut hanya menggunakan Docker untuk menarik gambar training-nv-pytorch.

Catatan

Untuk menggunakan gambar training-nv-pytorch di ACS, Anda harus menariknya dari halaman pusat artefak konsol tempat Anda membuat beban kerja atau menentukan gambar dalam file YAML.

1. Pilih gambar

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

2. Panggil API untuk mengaktifkan optimalisasi kompilasi dan optimalisasi memori GPU untuk rekompilasi

  • Aktifkan optimalisasi kompilasi

    Gunakan API Trainer transformers:

    image.png

  • Aktifkan optimalisasi memori GPU untuk rekompilasi

    export CHECKPOINT_OPTIMIZATION=true

3. Jalankan kontainer

Gambar ini menyediakan alat pelatihan model bawaan bernama ljperf untuk menunjukkan prosedur untuk menjalankan kontainer dan menjalankan tugas pelatihan.

LLM

# Jalankan kontainer dan masuk ke kontainer.
docker run --rm -it --ipc=host --net=host  --privileged egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:[tag]

# Jalankan demo pelatihan.
ljperf benchmark --model deepspeed/llama3-8b 

4. Saran

  • Perubahan dalam gambar melibatkan pustaka PyTorch dan DeepSpeed. Jangan instal ulang.

  • Biarkan zero_optimization.stage3_prefetch_bucket_size dalam konfigurasi DeepSpeed kosong atau atur ke auto.

Masalah Diketahui