TPU v5e

Ce document décrit l'architecture et les configurations prises en charge de Cloud TPU v5e.

Le TPU v5e est compatible avec l'entraînement à hôte unique et multi-hôte, ainsi qu'avec l'inférence à hôte unique. 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 dispose de quatre matrices (MXU), une unité vectorielle et une unité scalaire.

Le schéma suivant illustre une puce TPU v5e.

Schéma d'une puce v5e

Le tableau suivant présente les caractéristiques des chips de clé et leurs valeurs pour la version v5e.

Principales caractéristiques des puces Valeurs v5e
Pic de calcul par puce (bf16) 197 TFLOPS
Capacité et bande passante de la mémoire HBM2 16 Go, 819 Gbit/s
Bande passante de l'interconnexion entre puces 1 600 Gbit/s

Le tableau suivant présente les spécifications des pods et leurs valeurs pour la version v5e.

Principales spécifications des pods Valeurs v5e
Taille du pod TPU 256 chips
Topologie d'interconnexion Tore 2D
Pic de calcul par pod 100 péta-OPS (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 distinguer un environnement d'entraînement d'un environnement d'inférence, utilisez les options AcceleratorType ou AcceleratorConfig avec l'API TPU ou l'option --machine-type lorsque vous créez un pool de nœuds GKE.

Les jobs d'entraînement sont optimisés pour le débit et la disponibilité, tout en diffusant des jobs sont optimisées pour la latence. Un job d'entraînement sur des TPU provisionnés pour la diffusion peut avoir une disponibilité plus faible et, de la même manière, un job d'inférence exécuté sur des TPU provisionnées pour l'entraînement pourraient avoir une latence plus élevée.

Vous utilisez AcceleratorType pour spécifier le nombre de TensorCores que vous souhaitez utiliser. Vous spécifiez le AcceleratorType lors de la création d'un TPU à l'aide de la méthode gcloud CLI ou la console Google Cloud. La valeur que vous spécifiez pour AcceleratorType est une chaîne au format 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 le TPU v5e, il n'y a aucune différence entre l'utilisation de AcceleratorConfig et de AcceleratorType.

Pour configurer un TPU v5e à l'aide de AcceleratorConfig, utilisez --version et les Indicateurs --topology. Définissez --version sur la version de TPU que vous souhaitez utiliser, puis --topology à la disposition physique des puces TPU dans la tranche. La 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 :

Topologie 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. En 4 puces et plus tranches, toutes les puces TPU partagent le même nœud d'accès à la mémoire non uniforme (NUMA).

Pour les VM TPU v5e à 8 puces, la communication CPU-TPU sera plus efficace dans NUMA des partitions. Par exemple, dans la figure suivante, la communication CPU0-Chip0 être plus rapide que la communication CPU0-Chip4.

Communication entre les nœuds NUMA

Types de Cloud TPU v5e pour la diffusion

La diffusion à hôte unique est prise en charge pour un maximum de huit puces v5e. Les éléments suivants : sont prises en charge: tranches 1x1, 2x2 et 2x4. Chaque tranche comporte respectivement 1, 4 et 8 puces.

Configurations TPU v5e compatibles avec la diffusion: 1x1, 2x2 et 2x4.

Pour provisionner des TPU pour une tâche d'inférence, utilisez l'un des types d'accélérateurs suivants dans votre requête de création de CLI ou d'API TPU:

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ées "diffusion sur plusieurs hôtes", est compatible à l'aide de Sax. Pour en savoir plus, consultez Large Language Model Serving.

Types de Cloud TPU v5e pour l'entraînement

L'entraînement est compatible avec un maximum de 256 puces.

Pour provisionner des TPU pour une tâche d'entraînement v5e, utilisez l'un de l'accélérateur suivant dans votre requête de création de CLI ou d'API TPU:

AcceleratorType (API TPU) Type de machine (API GKE) Topologie
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

Comparatif 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
Interruption Élevée Moyenne Faible

Pour libérer de l'espace pour les charges de travail qui nécessitent plus de puces, les planificateurs peuvent préempter les VM avec moins de puces. Par conséquent, les VM à 8 chips sont susceptibles de préempter les VM à 1 et 4 chips.