Komputasi paralel untuk model AI besar memerlukan optimisasi yang mengurangi overhead komunikasi, menumpangtindihkan komputasi dengan komunikasi, serta meningkatkan efisiensi komunikasi. RDMA (Remote Direct Memory Access) secara signifikan mengurangi latensi jaringan dan sangat cocok untuk pekerjaan pelatihan terdistribusi yang berjalan pada sumber daya komputasi cerdas Lingjun.
Batasan penggunaan
Fitur ini hanya berlaku untuk pekerjaan pelatihan yang dikirimkan pada sumber daya komputasi cerdas Lingjun.
Konfigurasikan variabel jaringan berkinerja-tinggi
Platform for AI (PAI) telah mengaktifkan fitur RDMA pada sumber daya komputasi cerdas Lingjun dan mengonfigurasi sebelumnya variabel NVIDIA Collective Communications Library (NCCL) yang optimal. Kami merekomendasikan penggunaan variabel default untuk kinerja terbaik. Anda juga dapat menyesuaikannya sesuai framework pelatihan dan karakteristik model Anda.
Variabel default (ditetapkan platform)
Berdasarkan tipe instans Lingjun, platform telah mengonfigurasi variabel default. Tabel berikut mencantumkan detailnya:
|
Tipe instans Lingjun |
Variabel NCCL |
|
|
Untuk informasi selengkapnya mengenai variabel NCCL, lihat Deskripsi Variabel Lingkungan.
Deskripsi variabel lingkungan
Tabel berikut menjelaskan variabel lingkungan NCCL utama. Untuk informasi lebih lanjut, lihat dokumentasi NCCL.
|
Variabel lingkungan utama |
Deskripsi |
|
NCCL_IB_TC |
Mencocokkan aturan pemetaan jaringan Alibaba Cloud. Jika variabel ini tidak diatur atau diatur secara salah, kinerja dapat menurun. |
|
NCCL_IB_GID_INDEX |
Memberikan nilai yang direkomendasikan. Jika variabel ini tidak diatur atau diatur secara salah, NCCL mungkin melaporkan error. |
|
NCCL_SOCKET_IFNAME |
Memilih Port yang tepat untuk membuat koneksi. Persyaratan Port berbeda-beda tergantung tipe instans. Jika variabel ini tidak diatur atau diatur secara salah, NCCL mungkin gagal membuat koneksi. |
|
NCCL_DEBUG |
Umumnya diatur ke INFO untuk menghasilkan output log terkait NCCL yang lebih lengkap, sehingga membantu mengidentifikasi dan menyelesaikan potensi masalah. |
|
NCCL_IB_HCA |
Menentukan network interface controller (NIC) untuk komunikasi RDMA. Jumlah dan konvensi penamaan perangkat InfiniBand bervariasi di berbagai node komputasi. Jika variabel ini tidak diatur atau diatur secara salah, kinerja dapat menurun. |
|
NCCL_IB_TIMEOUT |
Menambah waktu timeout koneksi RDMA untuk meningkatkan toleransi kesalahan pada pekerjaan pelatihan. Jika variabel ini tidak diatur atau diatur secara salah, pekerjaan pelatihan mungkin terganggu. |
|
NCCL_IB_QPS_PER_CONNECTION |
Menambah jumlah Queue Pairs (QPs) per koneksi untuk meningkatkan throughput jaringan. |
Mengonfigurasi gambar
Saat mengirimkan pekerjaan pelatihan berdasarkan sumber daya komputasi cerdas Lingjun, gunakan image bawaan resmi yang disediakan oleh DLC.
Tiga image pelatihan GPU resmi berikut tersedia:
deepspeed-training:23.06-gpu-py310-cu121-ubuntu22.04
megatron-training:23.06-gpu-py310-cu121-ubuntu22.04
nemo-training:23.06-gpu-py310-cu121-ubuntu22.04
Ketiga image tersebut mencakup PyTorch 2.1, Megatron-LM 23.06, DeepSpeed 0.9.5, Transformers 4.29.2, NVIDIA NeMo 1.19.0, CUDA 12.1, Ubuntu 22.04, dan Python 3.10. Image-image tersebut dideploy di wilayah China (Ulanqab).
Dokumen terkait
Untuk langkah-langkah lengkap mengenai pengiriman pekerjaan pelatihan pada sumber daya komputasi cerdas Lingjun, lihat Buat Pekerjaan Pelatihan.