Framework, Regioni AWS e tipi di istanze supportati
Prima di utilizzare la libreria SageMaker AI Distributed Data Parallelism (SMDDP), controlla quali sono i framework ML e i tipi di istanza supportati e se ci sono quote sufficienti nel tuo account AWS e nella Regione AWS.
Framework supportati
Le tabelle seguenti mostrano i framework di deep learning e le relative versioni supportati da SageMaker AI e dalla libreria SMDDP. La libreria SMDDP è disponibile nei container framework di SageMaker AI
Nota
Per controllare gli aggiornamenti e le note di rilascio più recenti della libreria SMDDP, consulta Note di rilascio della libreria SageMaker AI Distributed Data Parallelism.
PyTorch
| Versione PyTorch | Versione della libreria SMDDP | Immagini del container framework di SageMaker AI preinstallate con SMDDP | Immagini Docker SMP preinstallate con SMDDP | URL del file binario** |
|---|---|---|---|---|
| v2.3.1 | smdistributed-dataparallel==v2.5.0 |
Non disponibile | 658645717510.dkr.ecr. |
https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.4.1/cu121/2024-10-09/smdistributed_dataparallel-2.5.0-cp311-cp311-linux_x86_64.whl |
| v2.3.0 | smdistributed-dataparallel==v2.3.0 |
763104351884.dkr.ecr. |
Attualmente non disponibile | https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.3.0/cu121/2024-05-23/smdistributed_dataparallel-2.3.0-cp311-cp311-linux_x86_64.whl |
| v2.2.0 | smdistributed-dataparallel==v2.2.0 |
763104351884.dkr.ecr. |
658645717510.dkr.ecr. |
https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.2.0/cu121/2024-03-04/smdistributed_dataparallel-2.2.0-cp310-cp310-linux_x86_64.whl |
| v2.1.0 | smdistributed-dataparallel==v2.1.0 |
763104351884.dkr.ecr. |
658645717510.dkr.ecr. |
https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.1.0/cu121/2024-02-04/smdistributed_dataparallel-2.1.0-cp310-cp310-linux_x86_64.whl |
| v2.0.1 | smdistributed-dataparallel==v2.0.1 |
763104351884.dkr.ecr. |
Non disponibile | https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.0.1/cu118/2023-12-07/smdistributed_dataparallel-2.0.2-cp310-cp310-linux_x86_64.whl |
| v2.0.0 | smdistributed-dataparallel==v1.8.0 |
763104351884.dkr.ecr. |
Non disponibile | https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.0.0/cu118/2023-03-20/smdistributed_dataparallel-1.8.0-cp310-cp310-linux_x86_64.whl |
| v1.13.1 | smdistributed-dataparallel==v1.7.0 |
763104351884.dkr.ecr. |
Non disponibile | https://smdataparallel.s3.amazonaws.com/binary/pytorch/1.13.1/cu117/2023-01-09/smdistributed_dataparallel-1.7.0-cp39-cp39-linux_x86_64.whl |
| v1.12.1 | smdistributed-dataparallel==v1.6.0 |
763104351884.dkr.ecr. |
Non disponibile | https://smdataparallel.s3.amazonaws.com/binary/pytorch/1.12.1/cu113/2022-12-05/smdistributed_dataparallel-1.6.0-cp38-cp38-linux_x86_64.whl |
| v1.12.0 | smdistributed-dataparallel==v1.5.0 |
763104351884.dkr.ecr. |
Non disponibile | https://smdataparallel.s3.amazonaws.com/binary/pytorch/1.12.0/cu113/2022-07-01/smdistributed_dataparallel-1.5.0-cp38-cp38-linux_x86_64.whl |
| v1.11.0 | smdistributed-dataparallel==v1.4.1 |
763104351884.dkr.ecr. |
Non disponibile | https://smdataparallel.s3.amazonaws.com/binary/pytorch/1.11.0/cu113/2022-04-14/smdistributed_dataparallel-1.4.1-cp38-cp38-linux_x86_64.whl |
** Gli URL dei file binari servono per l’installazione della libreria SMDDP in container personalizzati. Per ulteriori informazioni, consulta Creare un container Docker con la libreria SageMaker AI Distributed Data Parallelism.
Nota
La libreria SMDDP è disponibile nelle Regioni AWS in cui sono operativi i container framework di SageMaker AI
Nota
Dalla versione 1.4.0, la libreria SMDDP funziona come backend della parallelizzazione distribuita dei dati di PyTorch (torch.distributed), (torch.parallel.DistributedDataParallel). In base alla modifica, le seguenti API smdistributed
-
smdistributed.dataparallel.torch.distributedè obsoleta. Utilizza invece il pacchetto torch.distributed. -
smdistributed.dataparallel.torch.parallel.DistributedDataParallelè obsoleta. Utilizza invece l'API torch.nn.parallel.DistributedDataParallel.
Se è necessario utilizzare le versioni precedenti della libreria (v1.3.0 o precedente), consulta la documentazione archiviata della libreria SageMaker AI Distributed Data Parallelism
PyTorch Lightning
La libreria SMDDP è disponibile per PyTorch Lightning nei seguenti container framework di SageMaker AI per PyTorch e nei container Docker SMP.
PyTorch Lightning v2
| Versione di PyTorch Lightning | Versione PyTorch | Versione della libreria SMDDP | Immagini del container framework di SageMaker AI preinstallate con SMDDP | Immagini Docker SMP preinstallate con SMDDP | URL del file binario** |
|---|---|---|---|---|---|
| 2.2.5 | 2.3.0 | smdistributed-dataparallel==v2.3.0 |
763104351884.dkr.ecr. |
Attualmente non disponibile | https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.3.0/cu121/2024-05-23/smdistributed_dataparallel-2.3.0-cp311-cp311-linux_x86_64.whl |
| 2.2.0 | 2.2.0 | smdistributed-dataparallel==v2.2.0 |
763104351884.dkr.ecr. |
658645717510.dkr.ecr. |
https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.2.0/cu121/2024-03-04/smdistributed_dataparallel-2.2.0-cp310-cp310-linux_x86_64.whl |
| 2.1.2 | 2.1.0 | smdistributed-dataparallel==v2.1.0 |
763104351884.dkr.ecr. |
658645717510.dkr.ecr. |
https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.1.0/cu121/2024-02-04/smdistributed_dataparallel-2.1.0-cp310-cp310-linux_x86_64.whl |
| 2.1.0 | 2.0.1 | smdistributed-dataparallel==v2.0.1 |
763104351884.dkr.ecr. |
Non disponibile | https://smdataparallel.s3.amazonaws.com/binary/pytorch/2.0.1/cu118/2023-12-07/smdistributed_dataparallel-2.0.2-cp310-cp310-linux_x86_64.whl |
PyTorch Lightning v1
| Versione di PyTorch Lightning | Versione PyTorch | Versione della libreria SMDDP | Immagini del container framework di SageMaker AI preinstallate con SMDDP | URL del file binario** |
|---|---|---|---|---|
|
1.7.2 1.7.0 1.6.4 1.6.3 1.5.10 |
1.12.0 | smdistributed-dataparallel==v1.5.0 |
763104351884.dkr.ecr.<region>.amazonaws.com/pytorch-training:1.12.0-gpu-py38-cu113-ubuntu20.04-sagemaker |
https://smdataparallel.s3.amazonaws.com/binary/pytorch/1.12.0/cu113/2022-07-01/smdistributed_dataparallel-1.5.0-cp38-cp38-linux_x86_64.whl |
** Gli URL dei file binari servono per l’installazione della libreria SMDDP in container personalizzati. Per ulteriori informazioni, consulta Creare un container Docker con la libreria SageMaker AI Distributed Data Parallelism.
Nota
PyTorch Lightning e le sue librerie di utilità come Lightning Bolts non sono preinstallate nei DLC PyTorch. Quando crei uno strumento di stima PyTorch di SageMaker AI e invii una richiesta di job di addestramento nella Fase 2, devi fornire requirements.txt per installare pytorch-lightning e lightning-bolts all’interno del container di addestramento PyTorch di SageMaker AI.
# requirements.txt pytorch-lightning lightning-bolts
Per ulteriori informazioni su come specificare la directory di origine in cui inserire il file requirements.txt insieme allo script di addestramento e all’invio di un processo, consulta Using third-party libraries
Trasformatori Hugging Face
I AWS Deep Learning Containers per Hugging Face utilizzano i container di addestramento SageMaker per PyTorch e TensorFlow come immagini di base. Per cercare le versioni della libreria di trasformatori Hugging Face e le versioni abbinate di PyTorch e TensorFlow, consulta gli ultimi Container Hugging Face
TensorFlow (obsoleto)
Importante
La libreria SMDDP ha interrotto il supporto per TensorFlow e non è più disponibile nei Container DL per le versioni di TensorFlow successive alla 2.11.0. La tabella seguente elenca i Container DL precedenti per TensorFlow con la libreria SMDDP installata.
| Versione di TensorFlow | Versione della libreria SMDDP |
|---|---|
| 2.9.1, 2.10.1, 2.11.0 |
smdistributed-dataparallel==v1.4.1
|
| 2.8.3 |
smdistributed-dataparallel==v1.3.0
|
Regioni AWS
La libreria SMDDP è disponibile in tutte le Regioni AWS in cui sono operativi i Container AWS per il Deep Learning di SageMaker AI
Tipi di istanze supportati
La libreria SMDDP richiede uno dei seguenti tipi di istanza ML.
| Tipo di istanza |
|---|
ml.p3dn.24xlarge* |
ml.p4d.24xlarge |
ml.p4de.24xlarge |
Suggerimento
Per eseguire correttamente l’addestramento distribuito sui tipi di istanze abilitati per EFA, è necessario abilitare il traffico tra le istanze configurando il gruppo di sicurezza del VPC in cui sia consentito tutto il traffico in entrata e in uscita dal gruppo stesso. Per informazioni su come configurare le regole del gruppo di sicurezza, consulta Fase 1: preparare un gruppo di sicurezza abilitato per EFA nella Guida per l’utente di Amazon EC2.
Importante
* La libreria SMDDP ha interrotto il supporto per l’ottimizzazione delle operazioni di comunicazione collettiva sulle istanze P3. Sebbene sia comunque possibile utilizzare l’operazione collettiva AllReduce ottimizzata per SMDDP sulle istanze ml.p3dn.24xlarge, non è più disponibile alcun ulteriore supporto allo sviluppo per migliorare le prestazioni su questo tipo di istanza. Tieni presente che l’operazione collettiva AllGather ottimizzata per SMDDP è disponibile solo per le istanze P4.
Per le specifiche dei tipi di istanza, consulta la sezione Elaborazione accelerata nella pagina tipi di istanza Amazon EC2
Se hai ricevuto un messaggio di errore simile al seguente, segui le istruzioni in Richiesta di aumento della quota di servizio per le risorse SageMaker AI.
ResourceLimitExceeded: An error occurred (ResourceLimitExceeded) when calling the CreateTrainingJob operation: The account-level service limit 'ml.p3dn.24xlarge for training job usage' is 0 Instances, with current utilization of 0 Instances and a request delta of 1 Instances. Please contact AWS support to request an increase for this limit.