Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Marcos, Regiones de AWS, tipos de instancias y modelos probados compatibles
importante
Amazon Web Services (AWS) anuncia que no habrá nuevos lanzamientos o versiones del Compilador de entrenamiento de SageMaker. Puede seguir utilizando el Compilador de entrenamiento de SageMaker a través de los contenedores de aprendizaje profundo (DLC) de AWS existentes para entrenamiento de SageMaker. Es importante tener en cuenta que, si bien los DLC existentes siguen siendo accesibles, ya no recibirán parches ni actualizaciones de AWS, de acuerdo con la Política de compatibilidad del marco de contenedores de aprendizaje profundo de AWS.
Antes de utilizar el Compilador de entrenamiento de SageMaker, compruebe si el marco que ha elegido es compatible, si los tipos de instancia están disponibles en su cuenta de AWS y si su cuenta de AWS está en uno de las Regiones de AWS admitidas.
nota
El compilador de entrenamiento SageMaker está disponible en el SDK SageMaker Python v2.70.0 o posterior.
Marcos admitidos
El comCompilador de entrenamiento de SageMaker es compatible con los siguientes marcos de aprendizaje profundo y está disponible a través de contenedores de aprendizaje profundo de AWS.
Temas
PyTorch
| Marcos | Versión de marco | URI de contenedor de aprendizaje profundo | Ampliable para personalización de Docker |
|---|---|---|---|
| PyTorch | PyTorch v1.13.1 | 763104351884.dkr.ecr.<region>.amazonaws.com/pytorch-trcomp-training:1.12.0-gpu-py38-cu113-ubuntu20.04-sagemaker |
No |
| PyTorch v1.12.0 | 763104351884.dkr.ecr.<region>.amazonaws.com/pytorch-trcomp-training:1.13.1-gpu-py39-cu117-ubuntu20.04-sagemaker |
No | |
| PyTorch con Hugging Face Transformers |
Transformers v4.21.1 PyTorch v1.11.0 |
763104351884.dkr.ecr. |
No |
|
Transformers v4.17.0 PyTorch v1.10.2 |
763104351884.dkr.ecr. |
No | |
|
Transformers v4.11.0 PyTorch v1.9.0 |
763104351884.dkr.ecr. |
No |
TensorFlow
| Marcos | Versión de marco | URI de contenedor de aprendizaje profundo | Ampliable para personalización de Docker |
|---|---|---|---|
| TensorFlow |
TensorFlow v2.11.0 |
763104351884.dkr.ecr. |
Sí |
|
TensorFlow v2.10.0 |
763104351884.dkr.ecr. |
Sí | |
|
TensorFlow v2.9.1 |
763104351884.dkr.ecr. |
Sí | |
| TensorFlow con Hugging Face Transformers |
Transformers v4.17.0 TensorFlow v2.6.3 |
763104351884.dkr.ecr. |
No |
|
Transformers v4.11.0 TensorFlow v2.5.1 |
763104351884.dkr.ecr. |
No |
Para obtener más información, consulta Imágenes disponibles
Regiones de AWS
Los contenedores del Compilador de entrenamiento de Sagemaker
Tipos de instancias admitidos
El Compilador de entrenamiento Sagemaker se ha probado y es compatible con los siguientes tipos de instancias de ML.
-
Instancias P4
-
Instancias P3
-
Instancias G4dn
-
instancias G5
Para ver las especificaciones de los tipos de instancias, consulte la sección Computación acelerada en la página de tipos de instancias de Amazon EC2
Si encuentra un mensaje de error similar al siguiente, siga las instrucciones de Solicitar un aumento de la cuota de servicio para los recursos de 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.
Modelos probados
En la siguiente tabla se incluye una lista de los modelos que se han probado con Compilador de entrenamiento de SageMaker. Como referencia, el tamaño de lote más grande que cabe en la memoria también se incluye junto con otros parámetros de entrenamiento. El Compilador de entrenamiento de SageMaker puede cambiar el espacio de memoria del proceso de entrenamiento del modelo; como resultado, a menudo se puede utilizar un tamaño de lote mayor durante el proceso de entrenamiento, lo que reduce aún más el tiempo total de entrenamiento. En algunos casos, el Compilador de entrenamiento de SageMaker promueve de forma inteligente el almacenamiento en caché, lo que reduce el tamaño de lote más grande que cabe en la GPU. Debe volver a ajustar los hiperparámetros del modelo y encontrar un tamaño de lote óptimo para su caso. Para ahorrar tiempo, utilice las siguientes tablas de referencia para buscar un tamaño de lote que pueda ser un buen punto de partida para su caso de uso.
nota
Los tamaños de lote son tamaños de lotes locales que caben en cada GPU individual del tipo de instancia respectivo. También debe ajustar la tasa de entrenamiento al cambiar el tamaño del lote.
Modelos de procesamiento de lenguaje natural (NLP)
Los siguientes modelos se han probado para tareas de entrenamiento con todas las combinaciones de uno y varios nodos con uno o varios núcleos de GPU y precisión mixta automática (AMP), como se indica.
| GPU/GPU de uno o varios nodos o varias GPU | ||||||
|---|---|---|---|---|---|---|
| Modelo | Conjunto de datos | Tipo de instancia | Precisión | Longitud de secuencia | Tamaño de lote para marcos nativos | Tamaño de lote para el Compilador de entrenamiento de SageMaker |
| albert-base-v2 | wikitext-2-raw-v1 | g4dn.16xlarge | float16 | 128 | 80 | 192 |
| albert-base-v2 | wikitext-2-raw-v1 | g5.4xlarge | float16 | 128 | 128 | 332 |
| albert-base-v2 | wikitext-2-raw-v1 | p3.2xlarge | float16 | 128 | 80 | 224 |
| bert-base-uncased | wikitext-2-raw-v1 | g5.4xlarge | float16 | 128 | 160 | 288 |
| camembert-base | wikitext-2-raw-v1 | g5.4xlarge | float16 | 128 | 160 | 280 |
| distilbert-base-uncased | wikitext-2-raw-v1 | g5.4xlarge | float16 | 128 | 240 | 472 |
| distilgpt2 | wikitext-2-raw-v1 | g4dn.16xlarge | float16 | 128 | 77 | 128 |
| distilgpt2 | wikitext-2-raw-v1 | g5.4xlarge | float16 | 128 | 138 | 390 |
| distilgpt2 | wikitext-2-raw-v1 | p3.2xlarge | float16 | 128 | 96 | 256 |
| distilroberta-base | wikitext-2-raw-v1 | g4dn.16xlarge | float16 | 128 | 96 | 192 |
| distilroberta-base | wikitext-2-raw-v1 | g5.4xlarge | float16 | 128 | 171 | 380 |
| distilroberta-base | wikitext-2-raw-v1 | p3.2xlarge | float16 | 128 | 112 | 256 |
| gpt2 | wikitext-2-raw-v1 | g4dn.16xlarge | float16 | 128 | 52 | 152 |
| gpt2 | wikitext-2-raw-v1 | g5.4xlarge | float16 | 128 | 84 | 240 |
| gpt2 | wikitext-2-raw-v1 | p3.2xlarge | float16 | 128 | 58 | 164 |
| microsoft/deberta-base | wikitext-2-raw-v1 | g4dn.16xlarge | float16 | 128 | 48 | 128 |
| microsoft/deberta-base | wikitext-2-raw-v1 | g5.4xlarge | float16 | 128 | 84 | 207 |
| microsoft/deberta-base | wikitext-2-raw-v1 | p3.2xlarge | float16 | 128 | 53 | 133 |
| roberta-base | wikitext-2-raw-v1 | g5.4xlarge | float16 | 128 | 125 | 224 |
| xlm-roberta-base | wikitext-2-raw-v1 | g4dn.16xlarge | float16 | 128 | 16 | 31 |
| xlm-roberta-base | wikitext-2-raw-v1 | p3.2xlarge | float16 | 128 | 18 | 50 |
| xlnet-base-cased | wikitext-2-raw-v1 | g5.4xlarge | float16 | 128 | 128 | 240 |
| bert-base-uncased | wikitext-103-v1 | g5.48xlarge | float16 | 512 | 29 | 50 |
| distilbert-base-uncased | wikitext-103-v1 | g5.48xlarge | float16 | 512 | 45 | 64 |
| gpt2 | wikitext-103-v1 | g5.48xlarge | float16 | 512 | 18 | 45 |
| roberta-base | wikitext-103-v1 | g5.48xlarge | float16 | 512 | 23 | 44 |
| gpt2 | wikitext-103-v1 | p4d.24xlarge | float16 | 512 | 36 | 64 |
Modelos de visión artificial (CV)
Las pruebas se realizaron con TensorFlow Model Garden
| Uno o varios nodos, una o varias GPU | |||||
|---|---|---|---|---|---|
| Modelo | Conjunto de datos | Tipo de instancia | Precisión | Tamaño de lote para marcos nativos | Tamaño de lote para el Compilador de entrenamiento de SageMaker |
| ResNet152 | food101 | g4dn.16xlarge | float16 | 128 | 144 |
| ResNet152 | food101 | g5.4xlarge | float16 | 128 | 192 |
| ResNet152 | food101 | p3.2xlarge | float16 | 152 | 156 |
| ViT | food101 | g4dn.16xlarge | float16 | 512 | 512 |
| ViT | food101 | g5.4xlarge | float16 | 992 | 768 |
| ViT | food101 | p3.2xlarge | float16 | 848 | 768 |
Modelos de procesamiento de lenguaje natural (NLP)
Los siguientes modelos se han probado para tareas de entrenamiento con todas las combinaciones de uno y varios nodos con uno o varios núcleos de GPU y precisión mixta automática (AMP), como se indica.
| GPU/GPU de uno o varios nodos o varias GPU | ||||||
|---|---|---|---|---|---|---|
| Modelo | Conjunto de datos | Tipo de instancia | Precisión | Longitud de secuencia | Tamaño de lote para marcos nativos | Tamaño de lote para el Compilador de entrenamiento de SageMaker |
| albert-base-v2 | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 128 | 128 | 248 |
| bert-base-uncased | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 128 | 160 | 288 |
| camembert-base | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 128 | 160 | 279 |
| camembert-base | wikitext-2-raw-v1 | ml.p3.2xlarge | float16 | 128 | 105 | 164 |
| distilgpt2 | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 128 | 136 | 256 |
| distilgpt2 | wikitext-2-raw-v1 | ml.p3.2xlarge | float16 | 128 | 80 | 118 |
| gpt2 | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 128 | 84 | 240 |
| gpt2 | wikitext-2-raw-v1 | ml.p3.2xlarge | float16 | 128 | 80 | 119 |
| microsoft/deberta-base | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 128 | 93 | 197 |
| microsoft/deberta-base | wikitext-2-raw-v1 | ml.p3.2xlarge | float16 | 128 | 113 | 130 |
| roberta-base | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 128 | 125 | 224 |
| roberta-base | wikitext-2-raw-v1 | ml.p3.2xlarge | float16 | 128 | 78 | 112 |
| xlnet-base-cased | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 128 | 138 | 240 |
| bert-base-uncased | wikitext-103-v1 | ml.p4d.24xlarge | float16 | 512 | 52 | |
| distilbert-base-uncased | wikitext-103-v1 | ml.p4d.24xlarge | float16 | 512 | 160 | |
| gpt2 | wikitext-103-v1 | ml.p4d.24xlarge | float16 | 512 | 25 | |
| roberta-base | wikitext-103-v1 | ml.p4d.24xlarge | float16 | 512 | 64 | |
Modelos de visión artificial (CV)
Las pruebas se realizaron con TensorFlow Model Garden
| Uno o varios nodos, una o varias GPU | |||||
|---|---|---|---|---|---|
| Modelo | Conjunto de datos | Tipo de instancia | Precisión | Tamaño de lote para marcos nativos | Tamaño de lote para el Compilador de entrenamiento de SageMaker |
| MaskRCNN-ResNet50-FPN | COCO-2017 | ml.g5.2xlarge | float16 | 6 | 8 |
| MaskRCNN-ResNet50-FPN | COCO-2017 | ml.p3.2xlarge | float16 | 4 | 6 |
| ResNet50 | ImageNet | ml.g5.2xlarge | float16 | 192 | 256 |
| ResNet50 | ImageNet | ml.p3.2xlarge | float16 | 256 | 256 |
| ResNet101 | ImageNet | ml.g5.2xlarge | float16 | 128 | 256 |
| ResNet101 | ImageNet | ml.p3.2xlarge | float16 | 128 | 128 |
| ResNet152 | ImageNet | ml.g5.2xlarge | float16 | 128 | 224 |
| ResNet152 | ImageNet | ml.p3.2xlarge | float16 | 128 | 128 |
| VisionTransformer | ImageNet | ml.g5.2xlarge | float16 | 112 | 144 |
| VisionTransformer | ImageNet | ml.p3.2xlarge | float16 | 96 | 128 |
Modelos de procesamiento de lenguaje natural (NLP)
Las pruebas se realizaron con modelos de TrasnformerSequence_Len=128 y precisión mixta automática (AMP), como se indica.
| Uno o varios nodos, una o varias GPU | |||||
|---|---|---|---|---|---|
| Modelo | Conjunto de datos | Tipo de instancia | Precisión | Tamaño de lote para marcos nativos | Tamaño de lote para el Compilador de entrenamiento de SageMaker |
| albert-base-v2 | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 160 | 197 |
| albert-base-v2 | wikitext-2-raw-v1 | ml.p3.2xlarge | float16 | 95 | 127 |
| bert-base-uncased | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 160 | 128 |
| bert-base-uncased | wikitext-2-raw-v1 | ml.p3.2xlarge | float16 | 104 | 111 |
| bert-large-uncased | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 65 | 48 |
| bert-large-uncased | wikitext-2-raw-v1 | ml.p3.2xlarge | float16 | 40 | 35 |
| camembert-base | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 128 | 162 |
| camembert-base | wikitext-2-raw-v1 | ml.p3.2xlarge | float16 | 105 | 111 |
| distilbert-base-uncased | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 256 | 264 |
| distilbert-base-uncased | wikitext-2-raw-v1 | ml.p3.2xlarge | float16 | 128 | 169 |
| gpt2 | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 128 | 120 |
| gpt2 | wikitext-2-raw-v1 | ml.p3.2xlarge | float16 | 80 | 83 |
| jplu/tf-xlm-roberta-base | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 32 | 32 |
| jplu/tf-xlm-roberta-base | wikitext-2-raw-v1 | ml.p3.2xlarge | float16 | 32 | 36 |
| microsoft/mpnet-base | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 144 | 160 |
| microsoft/mpnet-base | wikitext-2-raw-v1 | ml.p3.2xlarge | float16 | 106 | 110 |
| roberta-base | wikitext-2-raw-v1 | ml.g5.2xlarge | float16 | 128 | 128 |
| roberta-base | wikitext-2-raw-v1 | ml.p3.2xlarge | float16 | 72 | 98 |
| albert-base-v2 | wikitext-2-raw-v1 | ml.g5.48xlarge | float16 | 128 | 192 |
| albert-base-v2 | wikitext-2-raw-v1 | ml.p3.16xlarge | float16 | 95 | 96 |
| distilbert-base-uncased | wikitext-2-raw-v1 | ml.g5.48xlarge | float16 | 256 | 256 |
| distilbert-base-uncased | wikitext-2-raw-v1 | ml.p3.16xlarge | float16 | 140 | 184 |
| google/electra-small-discriminator | wikitext-2-raw-v1 | ml.g5.48xlarge | float16 | 256 | 384 |
| google/electra-small-discriminator | wikitext-2-raw-v1 | ml.p3.16xlarge | float16 | 256 | 268 |
| gpt2 | wikitext-2-raw-v1 | ml.g5.48xlarge | float16 | 116 | 116 |
| gpt2 | wikitext-2-raw-v1 | ml.p3.16xlarge | float16 | 85 | 83 |
| gpt2 | wikitext-2-raw-v1 | ml.p4d.24xlarge | float16 | 94 | 110 |
| microsoft/mpnet-base | wikitext-2-raw-v1 | ml.g5.48xlarge | float16 | 187 | 164 |
| microsoft/mpnet-base | wikitext-2-raw-v1 | ml.p3.16xlarge | float16 | 106 | 111 |
Modelos de visión artificial (CV)
Las pruebas se realizaron con TensorFlow Model Garden
| Un nodo GPU única/múltiples GPU | |||||
|---|---|---|---|---|---|
| Modelo | Conjunto de datos | Tipo de instancia | Precisión | Tamaño de lote para marcos nativos | Tamaño de lote para el Compilador de entrenamiento de SageMaker |
| DetectionTransformer-ResNet50 | COCO-2017 | ml.g4dn.2xlarge | float32 | 2 | 4 |
| DetectionTransformer-ResNet50 | COCO-2017 | ml.g5.2xlarge | float32 | 3 | 6 |
| DetectionTransformer-ResNet50 | COCO-2017 | ml.p3.2xlarge | float32 | 2 | 4 |
| MaskRCNN-ResNet50-FPN | COCO-2017 | ml.g4dn.2xlarge | float16 | 4 | 6 |
| MaskRCNN-ResNet50-FPN | COCO-2017 | ml.g5.2xlarge | float16 | 6 | 8 |
| MaskRCNN-ResNet50-FPN | COCO-2017 | ml.g5.48xlarge | float16 | 48 | 64 |
| MaskRCNN-ResNet50-FPN | COCO-2017 | ml.p3.2xlarge | float16 | 4 | 6 |
| ResNet50 | ImageNet | ml.g4dn.2xlarge | float16 | 224 | 256 |
| ResNet50 | ImageNet | ml.g5.2xlarge | float16 | 192 | 160 |
| ResNet50 | ImageNet | ml.g5.48xlarge | float16 | 2048 | 2048 |
| ResNet50 | ImageNet | ml.p3.2xlarge | float16 | 224 | 160 |
| ResNet101 | ImageNet | ml.g4dn.2xlarge | float16 | 160 | 128 |
| ResNet101 | ImageNet | ml.g5.2xlarge | float16 | 192 | 256 |
| ResNet101 | ImageNet | ml.g5.48xlarge | float16 | 2048 | 2048 |
| ResNet101 | ImageNet | ml.p3.2xlarge | float16 | 160 | 224 |
| ResNet152 | ImageNet | ml.g4dn.2xlarge | float16 | 128 | 128 |
| ResNet152 | ImageNet | ml.g5.2xlarge | float16 | 192 | 224 |
| ResNet152 | ImageNet | ml.g5.48xlarge | float16 | 1536 | 1792 |
| ResNet152 | ImageNet | ml.p3.2xlarge | float16 | 128 | 160 |
| VisionTransformer | ImageNet | ml.g4dn.2xlarge | float16 | 80 | 128 |
| VisionTransformer | ImageNet | ml.g5.2xlarge | float16 | 112 | 144 |
| VisionTransformer | ImageNet | ml.g5.48xlarge | float16 | 896 | 1152 |
| VisionTransformer | ImageNet | ml.p3.2xlarge | float16 | 80 | 128 |
Modelos de procesamiento de lenguaje natural (NLP)
Las pruebas se realizaron con modelos de TrasnformerSequence_Len=128 y precisión mixta automática (AMP), como se indica.
| Un nodo GPU única/múltiples GPU | |||||
|---|---|---|---|---|---|
| Modelo | Conjunto de datos | Tipo de instancia | Precisión | Tamaño de lote para marcos nativos | Tamaño de lote para el Compilador de entrenamiento de SageMaker |
| albert-base-v2 | wikitext-2-raw-v1 | g4dn.16xlarge | float16 | 128 | 112 |
| albert-base-v2 | wikitext-2-raw-v1 | p3.2xlarge | float16 | 128 | 128 |
| albert-base-v2 | wikitext-2-raw-v1 | p3.8xlarge | float16 | 128 | 135 |
| albert-base-v2 | wikitext-2-raw-v1 | g5.4xlarge | float16 | 128 | 191 |
| bert-base-uncased | wikitext-2-raw-v1 | g4dn.16xlarge | float16 | 64 | 94 |
| bert-base-uncased | wikitext-2-raw-v1 | p3.2xlarge | float16 | 96 | 101 |
| bert-base-uncased | wikitext-2-raw-v1 | p3.8xlarge | float16 | 96 | 96 |
| bert-base-uncased | wikitext-2-raw-v1 | g5.4xlarge | float16 | 128 | 128 |
| bert-large-uncased | wikitext-2-raw-v1 | g4dn.16xlarge | float16 | 35 | 21 |
| bert-large-uncased | wikitext-2-raw-v1 | p3.2xlarge | float16 | 39 | 26 |
| bert-large-uncased | wikitext-2-raw-v1 | g5.4xlarge | float16 | 60 | 50 |
| camembert-base | wikitext-2-raw-v1 | g4dn.16xlarge | float16 | 96 | 90 |
| camembert-base | wikitext-2-raw-v1 | p3.2xlarge | float16 | 96 | 98 |
| camembert-base | wikitext-2-raw-v1 | p3.8xlarge | float16 | 96 | 96 |
| camembert-base | wikitext-2-raw-v1 | g5.4xlarge | float16 | 128 | 128 |
| distilbert-base-uncased | wikitext-2-raw-v1 | g4dn.16xlarge | float16 | 256 | 160 |
| distilbert-base-uncased | wikitext-2-raw-v1 | p3.2xlarge | float16 | 128 | 176 |
| distilbert-base-uncased | wikitext-2-raw-v1 | p3.8xlarge | float16 | 128 | 160 |
| distilbert-base-uncased | wikitext-2-raw-v1 | g5.4xlarge | float16 | 256 | 258 |
| google_electra-small-discriminator | wikitext-2-raw-v1 | g4dn.16xlarge | float16 | 256 | 216 |
| google_electra-small-discriminator | wikitext-2-raw-v1 | p3.2xlarge | float16 | 256 | 230 |
| google_electra-small-discriminator | wikitext-2-raw-v1 | p3.8xlarge | float16 | 256 | 224 |
| google_electra-small-discriminator | wikitext-2-raw-v1 | g5.4xlarge | float16 | 256 | 320 |
| gpt2 | wikitext-2-raw-v1 | g4dn.16xlarge | float16 | 80 | 64 |
| gpt2 | wikitext-2-raw-v1 | p3.2xlarge | float16 | 80 | 77 |
| gpt2 | wikitext-2-raw-v1 | p3.8xlarge | float16 | 80 | 72 |
| gpt2 | wikitext-2-raw-v1 | g5.4xlarge | float16 | 128 | 120 |
| jplu_tf-xlm-roberta-base | wikitext-2-raw-v1 | g4dn.16xlarge | float16 | 28 | 24 |
| jplu_tf-xlm-roberta-base | wikitext-2-raw-v1 | p3.2xlarge | float16 | 32 | 24 |
| jplu_tf-xlm-roberta-base | wikitext-2-raw-v1 | p3.8xlarge | float16 | 32 | 26 |
| jplu_tf-xlm-roberta-base | wikitext-2-raw-v1 | g5.4xlarge | float16 | 66 | 52 |
| microsoft_mpnet-base | wikitext-2-raw-v1 | g4dn.16xlarge | float16 | 96 | 92 |
| microsoft_mpnet-base | wikitext-2-raw-v1 | p3.2xlarge | float16 | 96 | 101 |
| microsoft_mpnet-base | wikitext-2-raw-v1 | p3.8xlarge | float16 | 96 | 101 |
| microsoft_mpnet-base | wikitext-2-raw-v1 | g5.4xlarge | float16 | 128 | 152 |
| roberta-base | wikitext-2-raw-v1 | g4dn.16xlarge | float16 | 64 | 72 |
| roberta-base | wikitext-2-raw-v1 | p3.2xlarge | float16 | 64 | 84 |
| roberta-base | wikitext-2-raw-v1 | p3.8xlarge | float16 | 64 | 86 |
| roberta-base | wikitext-2-raw-v1 | g5.4xlarge | float16 | 128 | 128 |
Las pruebas se realizaron con TensorFlow Model Garden
| Un nodo GPU única/múltiples GPU | ||||
|---|---|---|---|---|
| Modelo | Conjunto de datos | Tipo de instancia | Tamaño de lote para marcos nativos | Tamaño de lote para el Compilador de entrenamiento de SageMaker |
| ResNet50 | ImageNet | ml.g4dn.2xlarge | 192 | 256* |
| ResNet101 | ImageNet | ml.g4dn.2xlarge | 128 | 160 |
| ml.g5.2xlarge | 224 | 256* | ||
| ml.p3.16xlarge | 1536 | 1792 | ||
| ResNet152 | ImageNet | ml.g5.2xlarge | 192 | 224 |
| ml.p3.2xlarge | 160 | 160 | ||
| ml.p3.16xlarge | 1024 | 1 280 | ||
| VisionTransformer | ImageNet | ml.g4dn.2xlarge | 80 | 128 |
| ml.g5.2xlarge | 112 | 128 | ||
| ml.p3.2xlarge | 56 | 128 | ||
| ml.p3.16xlarge | 640 | 1024 | ||
| DetectionTransformer-ResNet50 | COCO-2017 | ml.g4dn.2xlarge | 2 | 2. |
| ml.g5.2xlarge | 3 | 6 | ||
| ml.p3.2xlarge | 2 | 4 | ||
| ml.p3.16xlarge | 8 | 32 | ||
| MaskRCNN-ResNet50-FPN | COCO-2017 | ml.g4dn.2xlarge | 4 | 4 |
| ml.g5.2xlarge | 6 | 8 | ||
| ml.p3.2xlarge | 4 | 6 | ||
* Los tamaños de lote marcados con el símbolo de asterisco (*) indican el tamaño de lote más grande probado por el equipo de desarrolladores del Compilador de entrenamiento de SageMaker. En el caso de las celdas marcadas, es posible que la instancia pueda adaptarse a un tamaño de lote mayor al indicado.
Probados con Sequence_Len=512 y precisión mixta automática (AMP).
| Un nodo una sola GPU | |||||
|---|---|---|---|---|---|
| Modelo | Conjunto de datos | Tipo de instancia | Recuento de instancias | Tamaño de lote para marcos nativos | Tamaño de lote para el Compilador de entrenamiento |
| albert-base-v2 | wikitext-2 | ml.g4dn.2xlarge | 1 | 14 | 28 |
| ml.g5.2xlarge | 1 | 18 | 40 | ||
| ml.p3.2xlarge | 1 | 14 | 32 | ||
| bert-base-cased | wikitext-2 | ml.g4dn.2xlarge | 1 | 12 | 24 |
| ml.g5.2xlarge | 1 | 28 | 44 | ||
| ml.p3.2xlarge | 1 | 16 | 20 | ||
| camembert-base | wikitext-2 | ml.g4dn.2xlarge | 1 | 16 | 28 |
| ml.g5.2xlarge | 1 | 24 | 40 | ||
| ml.p3.2xlarge | 1 | 16 | 24 | ||
| distilbert-base-uncased | wikitext-2 | ml.g4dn.2xlarge | 1 | 28 | 52 |
| ml.g5.2xlarge | 1 | 40 | 76 | ||
| ml.p3.2xlarge | 1 | 32 | 48 | ||
| wikitext-103-v1 | ml.p4d.24xlarge | 4 | 82 | 160 | |
| distilgpt2 | wikitext-2 | ml.g4dn.2xlarge | 1 | 6 | 18 |
| ml.g5.2xlarge | 1 | 12 | 28 | ||
| ml.p3.2xlarge | 1 | 6 | 16 | ||
| distilroberta-base | wikitext-2 | ml.g4dn.2xlarge | 1 | 20 | 40 |
| ml.g5.2xlarge | 1 | 28 | 56 | ||
| ml.p3.2xlarge | 1 | 24 | 40 | ||
| EleutherAI/gpt-neo-125M | wikitext-2 | ml.g4dn.2xlarge | 1 | 4 | 8 |
| ml.g5.2xlarge | 1 | 6 | 14 | ||
| ml.p3.2xlarge | 1 | 4 | 10 | ||
| gpt2 | wikitext-2 | ml.g4dn.2xlarge | 1 | 4 | 8 |
| ml.g5.2xlarge | 1 | 6 | 16 | ||
| ml.p3.2xlarge | 1 | 4 | 10 | ||
| wikitext-103-v1 | ml.p4d.24xlarge | 4 | 13 | 25 | |
| roberta-base | wikitext-2 | ml.g4dn.2xlarge | 1 | 12 | 20 |
| ml.g5.2xlarge | 1 | 24 | 36 | ||
| ml.p3.2xlarge | 1 | 12 | 20 | ||
| wikitext-103-v1 | ml.p4d.24xlarge | 4 | 36 | 64 | |
| xlnet-base-cased | wikitext-2 | ml.g4dn.2xlarge | 1 | 2 | 6 |
| ml.g5.2xlarge | 1 | 2 | 10 | ||
| ml.p3.2xlarge | 1 | 2 | 8 | ||
| bert-base-uncased | wikitext-103-v1 | ml.p4d.24xlarge | 2 | 32 | 64 |
| 4 | 32 | 64 | |||
| 8 | 32 | 64 | |||
| 16 | 32 | 64 | |||
| roberta-large | wikitext-103-v1 | ml.p4d.24xlarge | 4 | 16 | 24 |
| microsoft/deberta-v3-base | wikitext-103-v1 | ml.p4d.24xlarge | 16 | 9 | 23 |
Probados con Sequence_Len=512 y precisión mixta automática (AMP).
| Un nodo una sola GPU | |||
|---|---|---|---|
| Modelo | Tipo de instancia | Tamaño de lote para marcos nativos | Tamaño de lote para el Compilador de entrenamiento |
| albert-base-v2 | ml.p3.2xlarge | 14 | 28 |
| ml.g4dn.2xlarge | 14 | 24 | |
| bert-base-cased | ml.p3.2xlarge | 16 | 24 |
| ml.g4dn.2xlarge | 12 | 24 | |
| bert-base-uncased | ml.p3.2xlarge | 16 | 24 |
| ml.g4dn.2xlarge | 12 | 28 | |
| camembert-base | ml.p3.2xlarge | 12 | 24 |
| ml.g4dn.2xlarge | 12 | 28 | |
| distilbert-base-uncased | ml.p3.2xlarge | 28 | 48 |
| ml.g4dn.2xlarge | 24 | 52 | |
| distilgpt2 | ml.p3.2xlarge | 6 | 12 |
| ml.g4dn.2xlarge | 6 | 14 | |
| distilroberta-base | ml.p3.2xlarge | 20 | 40 |
| ml.g4dn.2xlarge | 12 | 40 | |
| EleutherAI/gpt-neo-125M | ml.p3.2xlarge | 2 | 10 |
| ml.g4dn.2xlarge | 2 | 8 | |
| facebook/bart-base | ml.p3.2xlarge | 2 | 6 |
| ml.g4dn.2xlarge | 2 | 6 | |
| gpt2 | ml.p3.2xlarge | 4 | 8 |
| ml.g4dn.2xlarge | 2 | 8 | |
| roberta-base | ml.p3.2xlarge | 12 | 20 |
| ml.g4dn.2xlarge | 12 | 20 | |
| xlnet-base-cased | ml.p3.2xlarge | 2 | 8 |
| ml.g4dn.2xlarge | 4 | 6 | |
Probados con Sequence_Len=512 y precisión mixta automática (AMP).
| Un nodo una sola GPU | |||
|---|---|---|---|
| Modelo | Tipo de instancia | Tamaño de lote para nativos | Tamaño de lote para el Compilador de entrenamiento |
| albert-base-v2 | ml.p3.2xlarge | 12 | 32 |
| bert-base-cased | ml.p3.2xlarge | 14 | 24 |
| bert-base-chinese | ml.p3.2xlarge | 16 | 24 |
| bert-base-multilingual-cased | ml.p3.2xlarge | 4 | 16 |
| bert-base-multilingual-uncased | ml.p3.2xlarge | 8 | 16 |
| bert-base-uncased | ml.p3.2xlarge | 12 | 24 |
| cl-tohoku/bert-base-japanese-whole-word-masking | ml.p3.2xlarge | 12 | 24 |
| cl-tohoku/bert-base-japanese | ml.p3.2xlarge | 12 | 24 |
| distilbert-base-uncased | ml.p3.2xlarge | 28 | 32 |
| distilbert-base-uncased-finetuned-sst-2-english | ml.p3.2xlarge | 28 | 32 |
| distilgpt2 | ml.p3.2xlarge | 16 | 32 |
| facebook/bart-base | ml.p3.2xlarge | 4 | 8 |
| gpt2 | ml.p3.2xlarge | 6 | 20 |
| nreimers/MiniLMv2-L6-H384-distilled-from-RoBERTa-Large | ml.p3.2xlarge | 20 | 32 |
| roberta-base | ml.p3.2xlarge | 12 | 20 |
| Un solo nodo varias GPU | |||
|---|---|---|---|
| Modelo | Tipo de instancia | Tamaño de lote para nativos | Tamaño de lote para el Compilador de entrenamiento |
| bert-base-chinese | ml.p3.8xlarge | 16 | 26 |
| bert-base-multilingual-cased | ml.p3.8xlarge | 6 | 16 |
| bert-base-multilingual-uncased | ml.p3.8xlarge | 6 | 16 |
| bert-base-uncased | ml.p3.8xlarge | 14 | 24 |
| distilbert-base-uncased | ml.p3.8xlarge | 14 | 32 |
| distilgpt2 | ml.p3.8xlarge | 6 | 32 |
| facebook/bart-base | ml.p3.8xlarge | 8 | 16 |
| gpt2 | ml.p3.8xlarge | 8 | 20 |
| roberta-base | ml.p3.8xlarge | 12 | 20 |
Probados con Sequence_Len=128 y precisión mixta automática (AMP).
| Modelo | Tipo de instancia | Tamaño de lote para marcos nativos | Tamaño de lote para el Compilador de entrenamiento |
|---|---|---|---|
| albert-base-v2 | ml.g4dn.16xlarge | 136 | 208 |
| albert-base-v2 | ml.g5.4xlarge | 219 | 312 |
| albert-base-v2 | ml.p3.2xlarge | 152 | 208 |
| albert-base-v2 | ml.p3.8xlarge | 152 | 192 |
| bert-base-uncased | ml.g4dn.16xlarge | 120 | 101 |
| bert-base-uncased | ml.g5.4xlarge | 184 | 160 |
| bert-base-uncased | ml.p3.2xlarge | 128 | 108 |
| bert-large-uncased | ml.g4dn.16xlarge | 37 | 28 |
| bert-large-uncased | ml.g5.4xlarge | 64 | 55 |
| bert-large-uncased | ml.p3.2xlarge | 40 | 32 |
| camembert-base | ml.g4dn.16xlarge | 96 | 100 |
| camembert-base | ml.g5.4xlarge | 190 | 160 |
| camembert-base | ml.p3.2xlarge | 129 | 108 |
| camembert-base | ml.p3.8xlarge | 128 | 104 |
| distilbert-base-uncased | ml.g4dn.16xlarge | 210 | 160 |
| distilbert-base-uncased | ml.g5.4xlarge | 327 | 288 |
| distilbert-base-uncased | ml.p3.2xlarge | 224 | 196 |
| distilbert-base-uncased | ml.p3.8xlarge | 192 | 182 |
| google_electra-small-discriminator | ml.g4dn.16xlarge | 336 | 288 |
| google_electra-small-discriminator | ml.g5.4xlarge | 504 | 384 |
| google_electra-small-discriminator | ml.p3.2xlarge | 352 | 323 |
| gpt2 | ml.g4dn.16xlarge | 89 | 64 |
| gpt2 | ml.g5.4xlarge | 140 | 146 |
| gpt2 | ml.p3.2xlarge | 94 | 96 |
| gpt2 | ml.p3.8xlarge | 96 | 88 |
| jplu_tf-xlm-roberta-base | ml.g4dn.16xlarge | 52 | 16 |
| jplu_tf-xlm-roberta-base | ml.g5.4xlarge | 64 | 44 |
| microsoft_mpnet-base | ml.g4dn.16xlarge | 120 | 100 |
| microsoft_mpnet-base | ml.g5.4xlarge | 192 | 160 |
| microsoft_mpnet-base | ml.p3.2xlarge | 128 | 104 |
| microsoft_mpnet-base | ml.p3.8xlarge | 130 | 92 |
| roberta-base | ml.g4dn.16xlarge | 108 | 64 |
| roberta-base | ml.g5.4xlarge | 176 | 142 |
| roberta-base | ml.p3.2xlarge | 118 | 100 |
| roberta-base | ml.p3.8xlarge | 112 | 88 |
Probados con Sequence_Len=128 y precisión mixta automática (AMP).
| Un nodo una sola GPU | |||
|---|---|---|---|
| Modelo | Tipo de instancia | Tamaño de lote para nativos | Tamaño de lote para el Compilador de entrenamiento |
| albert-base-v2 | ml.p3.2xlarge | 128 | 128 |
| bart-base | ml.p3.2xlarge | 12 | 64 |
| bart-large | ml.p3.2xlarge | 4 | 28 |
| bert-base-cased | ml.p3.2xlarge | 16 | 128 |
| bert-base-chinese | ml.p3.2xlarge | 16 | 128 |
| bert-base-multilingual-cased | ml.p3.2xlarge | 12 | 64 |
| bert-base-multilingual-uncased | ml.p3.2xlarge | 16 | 96 |
| bert-base-uncased | ml.p3.2xlarge | 16 | 96 |
| bert-large-uncased | ml.p3.2xlarge | 4 | 24 |
| cl-tohoku/bert-base-japanese | ml.p3.2xlarge | 16 | 128 |
| cl-tohoku/bert-base-japanese-whole-word-masking | ml.p3.2xlarge | 16 | 128 |
| distilbert-base-sst2 | ml.p3.2xlarge | 32 | 128 |
| distilbert-base-uncased | ml.p3.2xlarge | 32 | 128 |
| distilgpt2 | ml.p3.2xlarge | 32 | 128 |
| gpt2 | ml.p3.2xlarge | 12 | 64 |
| gpt2-large | ml.p3.2xlarge | 2 | 24 |
| jplu/tf-xlm-roberta-base | ml.p3.2xlarge | 12 | 32 |
| roberta-base | ml.p3.2xlarge | 4 | 64 |
| roberta-large | ml.p3.2xlarge | 4 | 64 |
| t5-base | ml.p3.2xlarge | 64 | 64 |
| t5-small | ml.p3.2xlarge | 128 | 128 |