TPU v5e
Ce document décrit l'architecture et les configurations compatibles de Cloud TPU v5e.
TPU v5e est compatible avec l'entraînement sur un ou plusieurs hôtes, ainsi que l'inférence sur un seul hôte. L'inférence multi-hôte est compatible avec Sax. Pour en savoir plus, consultez la page Large Language Model Serving.
Architecture du système
Chaque puce v5e contient un TensorCore. Chaque TensorCore possède quatre unités de multiplication matricielle (MXU), une unité vectorielle et une unité scalaire.
Le schéma suivant illustre une puce TPU v5e.
Le tableau suivant présente les spécifications du chip de clé et leurs valeurs pour la version 5e.
Caractéristiques des chips de clé | Valeurs v5e |
Pic de calcul par puce (bf16) | 197 TFLOPs |
Pic de calcul par puce (Int8) | 393 TFLOPs |
Capacité et bande passante du HBM2 | 16 Go, 819 Gbit/s |
Interchip Interconnect BW | 1 600 Gbit/s |
Le tableau suivant présente les spécifications des pods et leurs valeurs pour la version 5e.
Spécifications clés des pods | Valeurs v5e |
Taille du pod TPU | 256 chips |
Topologie d'interconnexion | 2D Torus |
Pic de calcul par pod | 100 PetaOps(Int8) |
Bande passante entièrement réduite par pod | 51,2 To/s |
Bande passante bissectionnelle par pod | 1,6 To/s |
Bande passante réseau du centre de données par pod | 6,4 Tbit/s |
Configurations
Cloud TPU v5e est un produit combiné d'entraînement et d'inférence (inférence). Pour faire la différence entre un environnement d'entraînement et d'inférence, utilisez les options AcceleratorType
ou AcceleratorConfig
avec l'API TPU, ou l'option --machine-type
lors de la création d'un pool de nœuds GKE.
Les tâches d'entraînement sont optimisées pour le débit et la disponibilité, tandis que les tâches de diffusion sont optimisées pour la latence. Une tâche d'entraînement exécutée sur des TPU provisionnés pour la diffusion peut présenter une disponibilité inférieure. De même, une tâche de diffusion exécutée sur des TPU provisionnés pour l'entraînement peut présenter une latence plus élevée.
AcceleratorType
vous permet de spécifier le nombre de TensorCores que vous souhaitez utiliser.
Vous spécifiez le paramètre AcceleratorType
lors de la création d'un TPU à l'aide de gcloud CLI ou de la console Google Cloud. La valeur que vous spécifiez pour AcceleratorType
est une chaîne au format suivant : v$VERSION_NUMBER-$CHIP_COUNT
.
Vous pouvez également utiliser AcceleratorConfig
pour spécifier le nombre de TensorCores que vous souhaitez utiliser. Toutefois, comme il n'existe pas de variantes de topologie 2D personnalisées pour TPU v5e, il n'existe aucune différence entre l'utilisation de AcceleratorConfig
et de AcceleratorType
.
Pour configurer un TPU v5e à l'aide de AcceleratorConfig
, utilisez les options --version
et --topology
. Définissez --version
sur la version de TPU que vous souhaitez utiliser et --topology
sur la disposition physique des puces TPU dans la tranche. La valeur que vous spécifiez pour AcceleratorConfig
est une chaîne au format AxB
, où A
et B
correspondent au nombre de chips dans chaque direction.
Les formes de tranche 2D suivantes sont compatibles avec la version 5e:
Topology | Nombre de puces TPU | Nombre d'hôtes |
1x1 | 1 | 1/8 |
2x2 | 4 | 1/2 |
2x4 | 8 | 1 |
4x4 | 16 | 2 |
4x8 | 32 | 4 |
8x8 | 64 | 8 |
8x16 | 128 | 16 |
16x16 | 256 | 32 |
Chaque VM TPU d'une tranche TPU v5e contient une, quatre ou huit puces. Dans des tranches à quatre puces ou plus petites, toutes les puces TPU partagent le même nœud NUMA (Non Uniform Memory Access).
Pour les VM TPU v5e à 8 puces, la communication CPU-TPU est plus efficace au sein des partitions NUMA. Par exemple, dans la figure suivante, la communication avec CPU0-Chip0
est plus rapide que la communication avec CPU0-Chip4
.
Types Cloud TPU v5e pour la diffusion
La diffusion à hôte unique est compatible avec jusqu'à huit puces v5e. Les configurations suivantes sont compatibles: tranches 1 x 1, 2 x 2 et 2 x 4. Chaque tranche comporte respectivement 1, 4 et 8 chips.
Pour provisionner des TPU pour une tâche de diffusion, utilisez l'un des types d'accélérateurs suivants dans votre requête de création de TPU de CLI ou d'API:
AcceleratorType (API TPU) | Type de machine (API GKE) |
---|---|
v5litepod-1 |
ct5lp-hightpu-1t |
v5litepod-4 |
ct5lp-hightpu-4t |
v5litepod-8 |
ct5lp-hightpu-8t |
La diffusion sur plus de huit puces v5e, également appelée diffusion multi-hôte, est compatible avec Sax. Pour en savoir plus, consultez la page Diffusion du grand modèle de langage.
Types Cloud TPU v5e pour l'entraînement
L'entraînement est pris en charge pour un maximum de 256 chips.
Afin de provisionner des TPU pour une tâche d'entraînement v5e, utilisez l'un des types d'accélérateurs suivants dans votre requête de création de TPU de CLI ou d'API:
AcceleratorType (API TPU) | Type de machine (API GKE) | Topology |
---|---|---|
v5litepod-16 |
ct5lp-hightpu-4t |
4x4 |
v5litepod-32 |
ct5lp-hightpu-4t |
4x8 |
v5litepod-64 |
ct5lp-hightpu-4t |
8x8 |
v5litepod-128 |
ct5lp-hightpu-4t |
8x16 |
v5litepod-256 |
ct5lp-hightpu-4t |
16x16 |
Comparaison des types de VM TPU v5e:
Type de VM | n2d-48-24-v5lite-tpu | n2d-192-112-v5lite-tpu | n2d-384-224-v5lite-tpu |
Nombre de puces v5e | 1 | 4 | 8 |
Nombre de vCPU | 24 | 112 | 224 |
RAM (Go) | 48 | 192 | 384 |
Nombre de nœuds NUMA | 1 | 1 | 2 |
Applicable à | v5litepod-1 | V5Litepod-4 | V5Litepod-8 |
Perturbation | Élevée | Moyenne | Faible |
Pour libérer de l'espace pour les charges de travail nécessitant plus de puces, les programmeurs peuvent préempter les VM avec moins de puces. Les VM à huit puces sont donc susceptibles de préempter les VM 1 et 4 puces.