Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Usa la libreria SMDDP nel tuo script di training PyTorch
A partire dalla libreria SageMaker AI distributed data parallelism (SMDDP) v1.4.0, puoi utilizzare la libreria come opzione di backend per il pacchetto distribuito. PyTorch AllReduce e le operazioni AllGather collettive, è sufficiente importare la libreria SMDDP all'inizio dello script di training e impostare SMDDP come backend dei moduli distribuiti durante l'inizializzazione del gruppo di processi. PyTorch Con una singola riga di specifica del backend, è possibile mantenere invariati tutti i moduli distribuiti nativi PyTorch e l'intero script di formazione. I seguenti frammenti di codice mostrano come utilizzare la libreria SMDDP come backend dei pacchetti di formazione PyTorch-based distribuiti: PyTorch Distributed Data Parallel (DDP)
PyTorch Per DDP o FSDP
Inizializza il gruppo di processi come segue.
import torch.distributed as dist import smdistributed.dataparallel.torch.torch_smddp dist.init_process_group(backend="smddp")
Nota
(Solo per processi PyTorch DDP) Il smddp backend attualmente non supporta la creazione di gruppi di sottoprocessi con l'API. torch.distributed.new_group() Non è possibile utilizzare il backend smddp contemporaneamente ad altri back-end di gruppi di processi come NCCL e Gloo.
DeepSpeed Per o Megatron-DeepSpeed
Inizializza il gruppo di processi come segue.
import deepspeed import smdistributed.dataparallel.torch.torch_smddp deepspeed.init_distributed(dist_backend="smddp")
Nota
Per utilizzare AllGather SMDDP con i programmi di avvio basati su mpirun (smdistributed e pytorchddp) in Avvio di processi di formazione distribuiti con SMDDP utilizzando Python SDK SageMaker, è inoltre necessario impostare la seguente variabile di ambiente nello script di addestramento.
export SMDATAPARALLEL_OPTIMIZE_SDP=true
Per una guida generale sulla scrittura di uno script di addestramento PyTorch FSDP, vedi Advanced Model Training with Fully Sharded Data Parallel (FSDP) nella documentazione.
Per una guida generale sulla scrittura di uno script di addestramento PyTorch DDP, vedi Guida introduttiva ai dati distribuiti paralleli nella documentazione.
Dopo aver completato l’adattamento dello script di addestramento, procedi con Avvio di processi di formazione distribuiti con SMDDP utilizzando Python SDK SageMaker.