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à.
Domande frequenti sulla libreria di parallelismo dei dati distribuiti Amazon SageMaker AI
Utilizza il seguente contenuto per trovare le risposte alle domande più frequenti sulla libreria SMDDP.
D: Quando si utilizza la libreria, come vengono gestite le istanze CPU che supportano allreduce? Devo creare CPU-GPU cluster eterogenei o il servizio di SageMaker intelligenza artificiale crea C5 aggiuntivi per i lavori che utilizzano la libreria SMDDP?
La libreria SMDDP supporta solo le istanze della GPU, in particolare le istanze P4d e P4de con GPU NVIDIA A100 ed EFA. Non viene lanciata alcuna istanza C5 o CPU aggiuntiva; se il processo di formazione SageMaker AI si svolge su un cluster P4d a 8 nodi, vengono utilizzate solo 8 istanze. ml.p4d.24xlarge Non viene fornita alcuna istanza aggiuntiva.
D: Ho un processo di addestramento che richiede 5 giorni su una singola istanza ml.p3.24xlarge con una serie di iperparametri H1 (tasso di apprendimento, dimensione del batch, ottimizzatore, ecc.). L'utilizzo della libreria di parallelismo dei dati di SageMaker AI e di un cluster cinque volte più grande è sufficiente per ottenere una velocità di circa cinque volte? Oppure devo riesaminare i relativi iperparametri di addestramento dopo aver attivato la libreria SMDDP?
La libreria modifica la dimensione complessiva del batch. La nuova dimensione complessiva del batch viene ridimensionata linearmente in base al numero di istanze di addestramento utilizzate. Di conseguenza, gli iperparametri, come il tasso di apprendimento, devono essere modificati per garantire la convergenza.
D: La libreria SMDDP supporta Spot?
Sì. Puoi utilizzare Managed Spot Training. Il percorso del file di checkpoint viene specificato nel processo di formazione. SageMaker I checkpoint vengono salvati e ripristinati nel relativo script di addestramento, come indicato nelle ultime fasi di Usa la libreria SMDDP nello script di formazione (obsoleto) TensorFlow e Utilizzate la libreria SMDDP nello script di addestramento PyTorch.
D: La libreria SMDDP è importante in una configurazione a host singolo e multidispositivo?
La libreria può essere utilizzata per l’addestramento su più dispositivi con host singolo, ma offre miglioramenti delle prestazioni solo nell’addestramento su più host.
D: Dove deve essere archiviato il set di dati di addestramento?
Il set di dati di addestramento può essere archiviato in un bucket Amazon S3 o su un'unità Amazon FSx. Consulta questo documento per conoscere i vari file system di input supportati per un processo di addestramento
D: Quando si utilizza la libreria SMDDP, è obbligatorio disporre dei dati di addestramento in FSx per Lustre? È possibile utilizzare Amazon EFS e Amazon S3?
In genere consigliamo di utilizzare Amazon FSx a causa della sua latenza inferiore e della velocità di trasmissione effettiva maggiore. Se si preferisce, è possibile utilizzare Amazon EFS o Amazon S3.
D: La libreria può essere utilizzata con nodi CPU?
No. Per trovare i tipi di istanza supportati dalla libreria SMDDP, consulta Tipi di istanze supportati.
D: Quali framework e versioni di framework sono attualmente supportati dalla libreria SMDDP al momento dell’avvio?
la libreria SMDDP attualmente supporta la versione PyTorch 1.6.0 o successiva e la versione 2.3.0 o successiva. TensorFlow Non TensorFlow supporta 1.x. Per ulteriori informazioni su quale versione della libreria SMDDP è inclusa nei contenitori di AWS deep learning, consulta Release Notes for Deep Learning Containers.
D: La libreria supporta AMP?
Sì. La libreria SMDDP supporta Automatic Mixed Precision (AMP) per impostazione predefinita. Non è necessaria alcuna azione aggiuntiva per usare l'AMP oltre alle modifiche a livello di framework allo script di addestramento. Se i gradienti sono in FP16, la libreria di parallelismo dei dati SageMaker AI esegue il suo funzionamento in FP16. AllReduce Per ulteriori informazioni sull'implementazione delle API AMP nello script di addestramento, consulta le seguenti risorse:
-
Frameworks
: nella documentazione di NVIDIA Deep Learning Performace PyTorch -
Frameworks: TensorFlow nella documentazione di NVIDIA Deep Learning Performace
-
Automatic mixed precision for deep learning
nella documentazione per sviluppatori NVIDIA -
TensorFlow API a precisione mista nella documentazione TensorFlow
D: Come faccio a sapere se il mio lavoro di formazione distribuito è rallentato a I/O causa di un intoppo?
Con un cluster più grande, il processo di formazione richiede una maggiore I/O produttività e pertanto la produttività di formazione potrebbe richiedere più tempo (più epoche) per raggiungere le massime prestazioni. Ciò indica che I/O si sta verificando un problema di difficoltà e che la cache è più difficile da sviluppare man mano che si scalano i nodi (requisiti di throughput più elevati e topologia di rete più complessa). Per ulteriori informazioni sul monitoraggio del throughput di Amazon FSx su CloudWatch, consulta Monitoring FSx for Lustre nella FSx for Lustre User Guide.
D: Come posso risolvere i problemi legati all'esecuzione di un processo di I/O formazione distribuito con parallelismo dei dati?
Ti consigliamo vivamente di utilizzare Amazon FSx come canale dati se utilizzi Amazon S3. Se utilizzi già Amazon FSx ma continui a riscontrare problemi di I/O collo di bottiglia, potresti aver configurato il tuo file system Amazon FSx con un I/O throughput ridotto e una capacità di storage ridotta. Per ulteriori informazioni su come stimare e scegliere la giusta dimensione della capacità di I/O throughput, consulta. Usa Amazon FSx e configura una capacità di storage e throughput ottimale
D: (Per la libreria v1.4.0 o successiva) Come posso risolvere l'errore Invalid backend durante l'inizializzazione del gruppo di processi.
Se viene visualizzato il messaggio di errore ValueError: Invalid backend: 'smddp' durante la chiamata a init_process_group, ciò è dovuto alla modifica sostanziale nella libreria SMDDP v1.4.0 e versioni successive. È necessario importare il PyTorch client della libreriasmdistributed.dataparallel.torch.torch_smddp, che si registra smddp come backend per. PyTorch Per ulteriori informazioni, consulta Utilizzate la libreria SMDDP nello script di addestramento PyTorch.
D: (Per la libreria SMDDP v1.4.0 o versione successiva) Vorrei chiamare le primitive collettive dell’interfaccia torch.distributedsmddp?
Nella versione 1.4.0, la libreria SMDDP supporta all_reduce, broadcast, reduce, all_gather e barrier dell’interfaccia torch.distributed.
D: (Per la libreria SMDDP v1.4.0 o versione successiva) Questa nuova API funziona con altre classi o librerie DDP personalizzate, come Apex DDP?
La libreria parallela SMDDP è testata con altre librerie Distributed Data Parallel di terze parti e implementazioni di framework che utilizzano i moduli torch.distribtued. L’utilizzo della libreria SMDDP con classi DDP personalizzate funziona purché le operazioni collettive utilizzate dalle classi DDP personalizzate siano supportate dalla libreria SMDDP. Vedi la domanda precedente per un elenco dei collettivi supportati. Se hai questi casi d'uso e hai bisogno di ulteriore supporto, contatta il team di SageMaker intelligenza artificiale tramite il AWS Support Center
D: La libreria SMDDP supporta l’opzione Bring Your Own Container (BYOC)? In tal caso, come posso installare la libreria ed eseguire un processo di addestramento distribuito scrivendo un Dockerfile personalizzato?
Se desideri integrare la libreria SMDDP e le sue dipendenze minime nel tuo container Docker, BYOC è l’approccio giusto. Puoi creare il tuo container utilizzando il file binario della libreria. Il processo consigliato consiste nello scrivere un Dockerfile personalizzato con la libreria e le sue dipendenze, creare il contenitore Docker, ospitarlo in Amazon ECR e utilizzare l'URI dell'immagine ECR per avviare un processo di formazione utilizzando la classe di stima generica AI. SageMaker Per ulteriori istruzioni su come preparare un Dockerfile personalizzato per la formazione distribuita sull'intelligenza artificiale con la libreria SMDDP, consulta. SageMaker Crea il tuo contenitore Docker con la libreria parallela di dati distribuiti SageMaker AI