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 |
|
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.
Saat ini, Anda hanya dapat menarik gambar di wilayah China (Beijing) melalui VPC.
Gambar
egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:25.02-serverlesscocok 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.02cocok 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.
Dasar: Gambar NGC PyTorch.
ACS AI Image: Base+ACCL: ACCL yang digunakan oleh gambar.
ACS AI Image: AC2+ACCL: Gambar Golden menggunakan AC2 BaseOS, tanpa optimalisasi apa pun.
ACS AI Image: AC2+ACCL+CompilerOpt: Gambar Golden menggunakan AC2 BaseOS, dengan hanya optimalisasi kompilasi PyTorch yang diaktifkan.
ACS AI Image: AC2+ACCL+CompilerOpt+CkptOpt: Gambar Golden menggunakan AC2 BaseOS, dengan optimalisasi kompilasi PyTorch dan optimalisasi titik kontrol gradien selektif yang diaktifkan.

Memulai Cepat
Contoh berikut hanya menggunakan Docker untuk menarik gambar training-nv-pytorch.
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:

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_sizedalam konfigurasi DeepSpeed kosong atau atur keauto.
Masalah Diketahui
Akses memori ilegal untuk MoE On H20 #13693. Kami sarankan Anda memperbarui vLLM.