TPU v3

En este documento, se describen la arquitectura y los parámetros de configuración admitidos de Cloud TPU v3.

Arquitectura del sistema

Cada chip TPU v3 contiene dos TensorCores. Cada TensorCore tiene dos unidades de multiplicación de matrices (MXU), una unidad vectorial y una unidad escalar. En la siguiente tabla, se muestran las especificaciones clave y sus valores para un pod de TPU v3.

Especificaciones clave Valores de Pods v3
Procesamiento máximo por chip 123 teraflops (bf16)
Capacidad y ancho de banda de HBM2 32 GiB, 900 GBps
Potencia mínima, media y máxima medida 123/220/262 W
Tamaño del pod de TPU 1,024 chips
Topología de interconexión Toro 2D
Procesamiento máximo por Pod 126 petaflops (bf16)
Ancho de banda total reducido por Pod 340 TB/s
Ancho de banda de bisección por Pod 6.4 TB/s

En el siguiente diagrama, se ilustra un chip TPU v3.

Diagrama de un chip TPU v3

Los detalles de la arquitectura y las características de rendimiento de la TPU v3 están disponibles en Una supercomputadora específica de dominio para el entrenamiento de redes neuronales profundas.

Beneficios de rendimiento de la TPU v3 en comparación con v2

El aumento de los FLOPS por TensorCore y capacidad de memoria en los parámetros de configuración de la TPU v3 puede mejorar el rendimiento de tus modelos de las siguientes maneras:

  • Los parámetros de configuración de la TPU v3 proporcionan importantes beneficios de rendimiento por TensorCore para los modelos que dependen del cálculo. Los modelos que dependen de la memoria en los parámetros de configuración de la TPU v2 podrían no lograr el mismo rendimiento si también dependen de la memoria en los parámetros de configuración de la TPU v3.

  • En los casos en que los datos no caben en la memoria en los parámetros de configuración de la TPU v2, la TPU v3 puede mejorar el rendimiento y un recálculo reducido de los valores intermedios (rematerialización).

  • La configuración de la TPU v3 pueden ejecutar nuevos modelos con tamaños de lote que no cabían en la configuración de la TPU v2. Por ejemplo, la TPU v3 podría permitir modelos ResNet más profundos y también imágenes más grandes con RetinaNet.

Los modelos que dependen casi totalmente de entradas ("entrada") en la TPU v2 debido a que los pasos de entrenamiento están esperando entradas también podrían depender de las entradas con Cloud TPU v3. La guía sobre rendimiento de la canalización puede ayudarte a resolver problemas con las entradas.

Configuración

Un pod de la TPU v3 se compone de 1,024 chips interconectados con vínculos de alta velocidad. Para crear un dispositivo o una porción de la TPU v3, usa la marca --accelerator-type en el comando de creación de la TPU (gcloud compute tpus tpu-vm). Especifica el tipo de acelerador indicando la versión de la TPU y la cantidad de núcleos de la TPU. Por ejemplo, para una sola TPU v3, usa --accelerator-type=v3-8. Para una porción de v3 con 128 TensorCores, usa --accelerator-type=v3-128.

En la siguiente tabla, se enumeran los tipos de la TPU v3 compatibles:

Versión de la TPU Finalización de compatibilidad
v3-8 (Fecha de finalización aún no establecida)
v3-32 (Fecha de finalización aún no establecida)
v3-128 (Fecha de finalización aún no establecida)
v3-256 (Fecha de finalización aún no establecida)
v3-512 (Fecha de finalización aún no establecida)
v3-1024 (Fecha de finalización aún no establecida)
v3-2048 (Fecha de finalización aún no establecida)

El siguiente comando muestra cómo crear una porción de la TPU v3 con 128 TensorCores:

  $ gcloud compute tpus tpu-vm create tpu-name \
    --zone=europe-west4-a \
    --accelerator-type=v3-128 \
    --version=tpu-ubuntu2204-base

Para obtener más información sobre la administración de las TPU, consulta Administra las TPU. Para obtener más información sobre la arquitectura del sistema de Cloud TPU, consulta Arquitectura del sistema.