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 SMDDP libreria nel tuo script di allenamento PyTorch
A partire dalla libreria SageMaker distributed data parallelism (SMDDP) v1.4.0, puoi utilizzare la libreria come opzione di backend per il pacchetto distribuito. PyTorch AllReduce
AllGather
collettive, è sufficiente importare la SMDDP libreria all'inizio dello script di formazione e impostarla SMDDP come backend dei moduli PyTorch distribuiti durante l'inizializzazione del gruppo di processi. Con la singola riga di specifiche del backend, è possibile mantenere invariati tutti i moduli PyTorch distribuiti nativi e l'intero script di formazione. I seguenti frammenti di codice mostrano come utilizzare la SMDDP libreria come backend di pacchetti di formazione distribuiti PyTorch basati: distributed PyTorch data parallel (DDP)
PyTorch DDPPer 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 i PyTorch DDP lavori) Il smddp
backend attualmente non supporta la creazione di gruppi di sottoprocessi con. torch.distributed.new_group()
API Inoltre, non è possibile utilizzare il smddp
backend contemporaneamente ad altri backend di gruppi di processi come e. NCCL
Gloo
Per DeepSpeed 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 utilizzarlo SMDDP AllGather
con i launcher mpirun
basati su (smdistributed
andpytorchddp
) inAvvio di lavori di formazione distribuiti SMDDP utilizzando Python SageMaker SDK, è inoltre necessario impostare la seguente variabile di ambiente nello script di addestramento.
export SMDATAPARALLEL_OPTIMIZE_SDP=true
Per indicazioni generali sulla scrittura di uno script di PyTorch FSDP formazione, vedete Advanced Model Training with Fully Sharded Data Parallel (FSDP) nella documentazione
Per indicazioni generali sulla stesura di uno script di PyTorch DDP formazione, consulta Getting started with distributed data parallel
Dopo aver completato l'adattamento dello script di addestramento, procedi con Avvio di lavori di formazione distribuiti SMDDP utilizzando Python SageMaker SDK.