Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Jalankan beban kerja pelatihan terdistribusi dengan Slurm on HyperPod
SageMaker HyperPod khusus untuk beban kerja pelatihan model bahasa besar (LLMs) dan model dasar (FMs). Beban kerja ini sering memerlukan penggunaan beberapa teknik paralelisme dan operasi yang dioptimalkan untuk infrastruktur dan sumber daya ML. Menggunakan SageMaker HyperPod, Anda dapat menggunakan kerangka pelatihan SageMaker terdistribusi berikut:
-
Pustaka paralelisme data SageMaker terdistribusi (SMDDP) yang menawarkan operasi komunikasi kolektif yang dioptimalkan untuk. AWS
-
Pustaka paralelisme SageMaker model (SMP) yang mengimplementasikan berbagai teknik paralelisme model.
Menggunakan SMDDP pada SageMaker HyperPod
SMDDPPerpustakaan adalah perpustakaan komunikasi kolektif yang meningkatkan kinerja komputasi pelatihan paralel data terdistribusi. SMDDPPustaka bekerja dengan kerangka kerja pelatihan terdistribusi open source berikut:
SMDDPPerpustakaan menangani overhead komunikasi dari operasi komunikasi kolektif utama dengan menawarkan yang berikut ini untuk SageMaker HyperPod.
-
Perpustakaan menawarkan
AllGather
dioptimalkan untuk AWS.AllGather
adalah operasi kunci yang digunakan dalam pelatihan paralel data sharded, yang merupakan teknik paralelisme data hemat memori yang ditawarkan oleh perpustakaan populer. Ini termasuk library SageMaker model parallelism (SMP), DeepSpeed Zero Redundancy Optimizer (Zero), dan PyTorch Fully Sharded Data Parallelism (). FSDP -
Pustaka melakukan node-to-node komunikasi yang dioptimalkan dengan sepenuhnya memanfaatkan infrastruktur AWS jaringan dan topologi instance SageMaker ML.
Untuk menjalankan contoh pekerjaan pelatihan data-paralel
Jelajahi sampel pelatihan terdistribusi berikut yang menerapkan teknik paralelisme data menggunakan perpustakaan. SMDDP
Untuk menyiapkan lingkungan untuk menggunakan SMDDP pustaka pada SageMaker HyperPod
Berikut ini adalah persyaratan lingkungan pelatihan untuk menggunakan SMDDP perpustakaan pada SageMaker HyperPod.
-
PyTorch v2.0.1 dan yang lebih baru
-
CUDAv11.8 dan yang lebih baru
-
libstdc++
versi runtime lebih besar dari 3 -
Python v3.10.x dan yang lebih baru
-
ml.p4d.24xlarge
danml.p4de.24xlarge
, yang merupakan tipe instance yang didukung oleh SMDDP perpustakaan -
imdsv2
diaktifkan pada host pelatihan
Bergantung pada bagaimana Anda ingin menjalankan pekerjaan pelatihan terdistribusi, ada dua opsi untuk menginstal SMDDP perpustakaan:
-
Instalasi langsung menggunakan file SMDDP biner.
-
Menggunakan SageMaker Deep Learning Containers (DLCs) yang sudah diinstal sebelumnya dengan SMDDP library.
Gambar Docker yang sudah diinstal sebelumnya dengan SMDDP pustaka atau URLs ke file SMDDP biner terdaftar di Kerangka Kerja yang Didukung dalam dokumentasi pustaka. SMDDP
Untuk menginstal SMDDP perpustakaan di SageMaker HyperPod DLAMI
-
pip install --no-cache-dir https://smdataparallel.s3.amazonaws.com/binary/pytorch/
<pytorch-version>/cuXYZ/YYYY-MM-DD/smdistributed_dataparallel-X.Y.Z-cp310-cp310-linux_x86_64
.whlcatatan
Jika Anda bekerja di lingkungan Conda, pastikan Anda menginstal PyTorch menggunakan
conda install
alih-alih.pip
conda install pytorch==
X.Y.Z
torchvision==X.Y.Z
torchaudio==X.Y.Z
pytorch-cuda=X.Y.Z
-c pytorch -c nvidia
Untuk menggunakan SMDDP pustaka pada wadah Docker
-
SMDDPPustaka sudah diinstal sebelumnya pada SageMaker Deep Learning Containers (DLCs). Untuk menemukan daftar SageMaker kerangka kerja DLCs PyTorch dengan SMDDP pustaka, lihat Kerangka Kerja yang Didukung dalam dokumentasi SMDDP pustaka. Anda juga dapat membawa wadah Docker Anda sendiri dengan dependensi yang diperlukan diinstal untuk menggunakan perpustakaan. SMDDP Untuk mempelajari lebih lanjut tentang menyiapkan wadah Docker khusus untuk menggunakan SMDDP pustaka, lihat jugaBuat wadah Docker Anda sendiri dengan pustaka paralel data SageMaker terdistribusi.
penting
Untuk menggunakan SMDDP pustaka dalam wadah Docker, pasang
/var/log
direktori dari mesin host ke/var/log
dalam wadah. Ini dapat dilakukan dengan menambahkan opsi berikut saat menjalankan wadah Anda.docker run
<OTHER_OPTIONS>
-v /var/log:/var/log ...
Untuk mempelajari cara menjalankan pekerjaan pelatihan paralel data SMDDP secara umum, lihat. Pelatihan terdistribusi dengan perpustakaan paralelisme data SageMaker terdistribusi
Menggunakan SMP pada SageMaker HyperPod cluster
Perpustakaan SageMaker model paralelisme (SMP) menawarkan berbagai teknik paralelisme state-of-the-art model, termasuk:
-
paralelisme data yang sepenuhnya dipecah
-
paralelisme ahli
-
pelatihan presisi campuran FP16 BF16 dengan/dan tipe FP8 data
-
paralelisme tensor
SMPPerpustakaan ini juga kompatibel dengan kerangka kerja open source seperti PyTorch FSDP, NVIDIA Megatron, dan NVIDIA Transformer Engine.
Untuk menjalankan contoh beban kerja pelatihan model-paralel
Tim SageMaker layanan menyediakan contoh pekerjaan pelatihan yang menerapkan paralelisme model dengan SMP perpustakaan di. awsome-distributed-training/3.test_cases/17.SM-modelparallelv2