Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Cadres, Régions AWS, types d’instance et modèles testés pris en charge
Important
Amazon Web Services (AWS) annonce qu’il n’y aura aucune nouvelle mise à jour ou version de SageMaker Training Compiler. Vous pouvez continuer à utiliser SageMaker Training Compiler via les AWS Deep Learning Containers (DLC) existants pour SageMaker Training. Il est important de noter que même si les DLC existants restent accessibles, ils ne recevront plus de correctifs ni de mises à jour d’AWS, conformément à la politique de support du Framework AWS Deep Learning Containers.
Avant d’utiliser SageMaker Training Compiler, vérifiez que le cadre de votre choix est pris en charge, que les types d’instances sont disponibles dans votre compte AWS et que votre compte AWS se trouve dans l’une des Régions AWS prises en charge.
Note
SageMaker Training Compiler est disponible dans le kit SDK SageMaker Python v2.70.0 ou version ultérieure.
Cadres pris en charge
SageMaker Training Compiler prend en charge les cadres de deep learning suivants et est disponible via AWSDeep Learning Containers.
Rubriques
PyTorch
| Cadre | Version du cadre | URI des Deep Learning Containers | Extensible pour personnalisation Docker |
|---|---|---|---|
| PyTorch | PyTorch v1.13.1 | 763104351884.dkr.ecr.<region>.amazonaws.com/pytorch-trcomp-training:1.12.0-gpu-py38-cu113-ubuntu20.04-sagemaker |
Non |
| PyTorch v1.12.0 | 763104351884.dkr.ecr.<region>.amazonaws.com/pytorch-trcomp-training:1.13.1-gpu-py39-cu117-ubuntu20.04-sagemaker |
Non | |
| PyTorch avec Hugging Face Transformers |
Transformers v4.21.1 PyTorch v1.11.0 |
763104351884.dkr.ecr. |
Non |
|
Transformers v4.17.0 PyTorch v1.10.2 |
763104351884.dkr.ecr. |
Non | |
|
Transformers v4.11.0 PyTorch v1.9.0 |
763104351884.dkr.ecr. |
Non |
TensorFlow
| Cadre | Version du cadre | URI des Deep Learning Containers | Extensible pour personnalisation Docker |
|---|---|---|---|
| TensorFlow |
TensorFlow v2.11.0 |
763104351884.dkr.ecr. |
Oui |
|
TensorFlow v2.10.0 |
763104351884.dkr.ecr. |
Oui | |
|
TensorFlow v2.9.1 |
763104351884.dkr.ecr. |
Oui | |
| TensorFlow avec Hugging Face Transformers |
Transformers v4.17.0 TensorFlow v2.6.3 |
763104351884.dkr.ecr. |
Non |
|
Transformers v4.11.0 TensorFlow v2.5.1 |
763104351884.dkr.ecr. |
Non |
Pour plus d’informations, consultez Images disponibles
Régions AWS
Les conteneurs SageMaker Training Compiler
Types d’instance pris en charge
SageMaker Training Compiler est testé et prend en charge les types d’instances ML suivants.
-
Instances P4
-
instances P3
-
instances G4dn
-
Instances G5
Pour les spécifications des types d’instances, consultez la section Calcul accéléré sur la page Types d’instances Amazon EC2
Si vous rencontrez un message d’erreur semblable au suivant, suivez les instructions de la section Demande d’augmentation du quota de service pour les ressources 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.
Modèles testés
Le tableau suivant comprend une liste des modèles qui ont été testés avec SageMaker Training Compiler. Pour référence, la plus grande taille de lot pouvant tenir dans la mémoire est également incluse aux côtés d’autres paramètres d’entraînement. SageMaker Training Compiler peut modifier l’empreinte mémoire du processus d’entraînement des modèles. Par conséquent, une taille de lot plus importante peut souvent être utilisée pendant le processus d’entraînement, ce qui réduit encore le temps total d’entraînement. Dans certains cas, SageMaker Training Compiler favorise intelligemment la mise en cache, ce qui entraîne une diminution de la plus grande taille de lot pouvant être stockée sur le GPU. Vous devez réajuster les hyperparamètres de votre modèle et trouver la taille de lot optimale pour votre cas. Pour gagner du temps, utilisez les tableaux de référence suivants pour rechercher une taille de lot qui peut constituer un bon point de départ pour votre cas d’utilisation.
Note
Les tailles de lots sont des tailles de lots locales qui s’adaptent à chaque GPU individuel dans le type d’instance respectif. Vous devez également ajuster le taux d’apprentissage lorsque vous modifiez la taille du lot.
Modèles de traitement du langage naturel (NLP)
Les modèles suivants sont testés pour les tâches d’entraînement pour toutes les combinaisons de nœuds uniques et multiples avec un ou plusieurs cœurs GPU et une précision mixte automatique (AMP), comme indiqué.
| GPU unique/GPU multiple à nœud unique/à nœud multiple | ||||||
|---|---|---|---|---|---|---|
| Modèle | Jeux de données | Type d’instance | Précision | Durée de la séquence | Taille du lot pour les cadres natifs | Taille du lot pour SageMaker Training Compiler |
| 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 |
Modèles de vision par ordinateur (CV)
Testé avec TensorFlow Model Garden
| GPU unique/multiple à nœud unique/multiple | |||||
|---|---|---|---|---|---|
| Modèle | Jeux de données | Type d’instance | Précision | Taille du lot pour les cadres natifs | Taille du lot pour SageMaker Training Compiler |
| 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 |
Modèles de traitement du langage naturel (NLP)
Les modèles suivants sont testés pour les tâches d’entraînement pour toutes les combinaisons de nœuds uniques et multiples avec un ou plusieurs cœurs GPU et une précision mixte automatique (AMP), comme indiqué.
| GPU unique/GPU multiple à nœud unique/à nœud multiple | ||||||
|---|---|---|---|---|---|---|
| Modèle | Jeux de données | Type d’instance | Précision | Durée de la séquence | Taille du lot pour les cadres natifs | Taille du lot pour SageMaker Training Compiler |
| 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 | |
Modèles de vision par ordinateur (CV)
Testé avec TensorFlow Model Garden
| GPU unique/multiple à nœud unique/multiple | |||||
|---|---|---|---|---|---|
| Modèle | Jeux de données | Type d’instance | Précision | Taille du lot pour les cadres natifs | Taille du lot pour SageMaker Training Compiler |
| 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 |
Modèles de traitement du langage naturel (NLP)
Testé avec des modèles de transformeurSequence_Len=128 et l’option Automatic Mixed Precision (AMP) comme indiqué.
| GPU unique/multiple à nœud unique/multiple | |||||
|---|---|---|---|---|---|
| Modèle | Jeux de données | Type d’instance | Précision | Taille du lot pour les cadres natifs | Taille du lot pour SageMaker Training Compiler |
| 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 |
Modèles de vision par ordinateur (CV)
Testé avec TensorFlow Model Garden
| GPU unique à un seul nœud/multi-GPU | |||||
|---|---|---|---|---|---|
| Modèle | Jeux de données | Type d’instance | Précision | Taille du lot pour les cadres natifs | Taille du lot pour SageMaker Training Compiler |
| 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 | 1 152 |
| VisionTransformer | ImageNet | ml.p3.2xlarge | float16 | 80 | 128 |
Modèles de traitement du langage naturel (NLP)
Testé avec des modèles de transformeurSequence_Len=128 et l’option Automatic Mixed Precision (AMP) comme indiqué.
| GPU unique à un seul nœud/multi-GPU | |||||
|---|---|---|---|---|---|
| Modèle | Jeux de données | Type d’instance | Précision | Taille du lot pour les cadres natifs | Taille du lot pour SageMaker Training Compiler |
| 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 |
Testé avec TensorFlow Model Garden
| GPU unique à un seul nœud/multi-GPU | ||||
|---|---|---|---|---|
| Modèle | Jeux de données | Type d’instance | Taille du lot pour les cadres natifs | Taille du lot pour SageMaker Training Compiler |
| 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 | 1 024 | 1280 | ||
| 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 | ||
* Les tailles de lots marquées d’un astérisque (*) indiquent la plus grande taille de lot testée par l’équipe de développement SageMaker Training Compiler. Pour les cellules marquées, l’instance peut éventuellement s’adapter à une taille de lot supérieure à celle indiquée.
Testé avec Sequence_Len=512 et l’option Automatic Mixed Precision (AMP).
| GPU à un seul nœud | |||||
|---|---|---|---|---|---|
| Modèle | Jeux de données | Type d’instance | Nombre d’instances | Taille du lot pour les cadres natifs | Taille du lot pour Training Compiler |
| 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 |
Testé avec Sequence_Len=512 et l’option Automatic Mixed Precision (AMP).
| GPU à un seul nœud | |||
|---|---|---|---|
| Modèle | Type d’instance | Taille du lot pour les cadres natifs | Taille du lot pour Training Compiler |
| 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 | |
Testé avec Sequence_Len=512 et l’option Automatic Mixed Precision (AMP).
| GPU à un seul nœud | |||
|---|---|---|---|
| Modèle | Type d’instance | Taille de lot pour natif | Taille du lot pour Training Compiler |
| 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 |
| Multi-GPU à nœud unique | |||
|---|---|---|---|
| Modèle | Type d’instance | Taille de lot pour natif | Taille du lot pour Training Compiler |
| 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 |
Testé avec Sequence_Len=128 et l’option Automatic Mixed Precision (AMP).
| Modèle | Type d’instance | Taille du lot pour les cadres natifs | Taille du lot pour Training Compiler |
|---|---|---|---|
| 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 |
Testé avec Sequence_Len=128 et l’option Automatic Mixed Precision (AMP).
| GPU à un seul nœud | |||
|---|---|---|---|
| Modèle | Type d’instance | Taille de lot pour natif | Taille du lot pour Training Compiler |
| 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 |