Administra recursos de TPU

En esta página, se describe cómo crear, enumerar, detener, iniciar, borrar y conectarse a Cloud TPU con la API de Create Node. Se llama a la API de Create Node cuando ejecuta el comando gcloud compute tpus tpu-vm create con Google Cloud CLI y cuando creas una TPU con la consola de Google Cloud. Cuando uses el botón Node.js, tu solicitud se procesa de inmediato. Si no hay capacidad suficiente para completar tu solicitud, esta fallará.

La práctica recomendada es crear TPU con recursos en cola en lugar de la API de Create Node. Cuando solicitas recursos en cola, la solicitud se agrega a una cola que mantiene el servicio de Cloud TPU. Cuando el recurso solicitado está disponible, a tu proyecto de Google Cloud para uso exclusivo de inmediato. Para Para obtener más información, consulta Administra recursos en cola.

Cuando usas Multislice, debes usar recursos en cola. Para ver más información, consulta Introducción a Multislice.

Si quieres usar Google Kubernetes Engine (GKE) para administrar recursos TPU, primero debes crear un clúster de GKE. Luego, agrega grupos de nodos que contenga porciones de TPU a tu clúster. Para obtener más información, consulta Acerca de las TPU en GKE.

Requisitos previos

Antes de ejecutar estos procedimientos, debes instalar Google Cloud CLI, crear un proyecto de Google Cloud y habilitar la API de Cloud TPU. Para obtener instrucciones, consulta Configura el entorno de Cloud TPU.

Si usas Google Cloud CLI, puedes ejecutar comandos con el Cloud Shell, una VM de Compute Engine o tu máquina local. El Cloud Shell te permite interactuar con las Cloud TPU instalar cualquier software. Cloud Shell se desconecta después de un período inactividad. Si ejecutas comandos de larga duración, te recomendamos instalar Google Cloud CLI en tu máquina local. Para obtener más información sobre el Google Cloud CLI, consulta la Referencia de gcloud.

Crea una Cloud TPU con la API de Crear nodo

Puedes crear una Cloud TPU con gcloud, la consola de Google Cloud, o la API de Cloud TPU.

Cuando creas una Cloud TPU, debes especificar la imagen de VM de TPU (también llamada TPU) (versión de software). Para determinar qué imagen de VM debes usar, consulta VM de TPU. imágenes.

También debes especificar la configuración de TPU en términos de TensorCores o TPU. chips. Para obtener más información, consulta la sección de la versión de TPU que usas en Arquitectura del sistema.

gcloud

Para crear una TPU con la API de Create Node, usa el comando gcloud compute tpus tpu-vm create

El siguiente comando usa una configuración basada en TensorCore:

$ gcloud compute tpus tpu-vm create tpu-name \
  --zone=us-central2-b \
  --accelerator-type=v4-8 \
  --version=tpu-software-version

Descripciones de las marcas de comandos

zone
La zona en la que planeas crear tu Cloud TPU.
accelerator-type
El tipo de acelerador especifica la versión y el tamaño de la Cloud TPU que deseas crear. Para obtener más información sobre los tipos de aceleradores compatibles con cada versión de TPU, consulta Versiones de TPU.
version
La versión del software de la TPU.
shielded-secure-boot (opcional)
Especifica que las instancias de TPU se crean con el arranque seguro habilitado. Esto las convierte de manera implícita en instancias de VM protegida. Consulta ¿Qué es una VM protegida? para obtener más información.

Con el siguiente comando, se crea una TPU con una topología específica:

$ gcloud compute tpus tpu-vm create tpu-name \
  --zone=us-central2-b \
  --type=v4 \
  --topology=2x2x1 \
  --version=tpu-software-version

Marcas obligatorias

tpu-name
Es el nombre de la VM de TPU que estás creando.
zone
La zona en la que te encuentras la creación de tu Cloud TPU.
type
La versión de TPU que quieres usar. Para obtener más información, consulta Versiones de TPU.
topology
La disposición física de los chips TPU, que especifica la cantidad de chips en cada dimensión. Para obtener más información topologías compatibles para cada versión de TPU, consulta Versiones de TPU.
version
La versión de software de TPU que quieres usar. Para obtener más información, consulta Versiones de software de TPU.

Console

  1. En la consola de Google Cloud, ve a la página TPU:

    Ir a TPU

  2. Haz clic en Crear TPU.

  3. En el campo Nombre, ingresa un nombre para la TPU.

  4. En el cuadro Zona, selecciona la zona en la que se creará la TPU.

  5. En el cuadro Tipo de TPU, selecciona un tipo de acelerador. El tipo de acelerador especifica la versión y el tamaño de la Cloud TPU que deseas crear. Para obtener más información sobre los tipos de aceleradores compatibles Para cada versión de TPU, consulta las versiones de TPU.

  6. En el cuadro Versión de software de TPU, selecciona una versión de software. Al crear un VM de Cloud TPU, la versión de software de TPU especifica la versión de la TPU del entorno de ejecución. Para obtener más información, consulta Imágenes de VM de TPU.

  7. Haz clic en Crear para crear tus recursos.

curl

En el siguiente comando, se usa curl para crear una TPU.

$ curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d "{accelerator_type: 'v4-8', \
runtime_version:'tpu-vm-tf-2.17.0-pjrt', \
network_config: {enable_external_ips: true}, \
shielded_instance_config: { enable_secure_boot: true }}" \
https://tpu.googleapis.com/v2/projects/project-id/locations/us-central2-b/nodes?node_id=node_name

Campos obligatorios

runtime_version
La versión del entorno de ejecución de Cloud TPU que quieres usar.
project
El nombre del proyecto de Google Cloud inscrito
zone
La zona en la que crearás tu Cloud TPU.
node_name
Es el nombre de la VM de TPU que estás creando.

Ejecuta una secuencia de comandos de inicio

Puedes ejecutar una secuencia de comandos de inicio en cada VM de TPU si especificas marca --metadata startup-script cuando se crea la VM de TPU. Lo siguiente crea una VM de TPU con una secuencia de comandos de inicio.

$ gcloud compute tpus tpu-vm create tpu-name \
    --zone=us-central2-b \
    --accelerator-type=tpu-type \
    --version=tpu-vm-tf-2.17.0-pjrt \
    --metadata startup-script='#! /bin/bash
      pip3 install numpy
      EOF'

Conéctate a una Cloud TPU

gcloud

Conéctate a tu Cloud TPU con SSH:

$ gcloud compute tpus tpu-vm ssh tpu-name --zone=zone

Cuando solicitas una porción más grande que un solo host, Cloud TPU crea una VM de TPU para cada host. La cantidad de chips TPU por host depende del Versión de TPU.

Para instalar objetos binarios o ejecutar código, conéctate a cada VM de TPU mediante tpu-vm ssh command

$ gcloud compute tpus tpu-vm ssh tpu-name

Para conectarse a una VM de TPU específica Con SSH, usa la marca --worker que sigue a un índice basado en 0:

$ gcloud compute tpus tpu-vm ssh tpu-name --worker=1

Para ejecutar un comando en todas las VMs de TPU con un solo comando, usa el Las marcas --worker=all y --command:

$ gcloud compute tpus tpu-vm ssh tpu-name \
  --project=your_project_ID \
  --zone=zone \
  --worker=all \
  --command='pip install "jax[tpu]==0.4.20" -f https://storage.googleapis.com/jax-releases/libtpu_releases.html'

Para Multislice, puedes ejecutar un comando en una VM con el nombre de TPU enumerado, con cada prefijo de Slice y el número anexado a él. Para ejecutar una en todas las VMs de TPU de todas las slices, usa --node=all, --worker=all, y --command, con una definición --batch-size marca.

$ gcloud compute tpus queued-resources ssh ${QUEUED_RESOURCE_ID} \
  --project=project_ID \
  --zone=zone \
  --node=all \
  --worker=all \
  --command='pip install "jax[tpu]==0.4.20" -f https://storage.googleapis.com/jax-releases/libtpu_releases.html' \
  --batch-size=4

Console

Para conectarte a tus TPU en la consola de Google Cloud, usa SSH en el navegador:

  1. En la consola de Google Cloud, ve a la página TPU:

    Ir a TPU

  2. En la lista de VMs de TPU, haz clic en SSH en la fila de la VM de TPU que a la que quieres conectarte.

Haz una lista de tus recursos de Cloud TPU

Puedes enumerar todas las Cloud TPU en una zona especificada.

gcloud

$ gcloud compute tpus tpu-vm list --zone=zone

Console

En la consola de Google Cloud, ve a la página TPU:

Ir a TPU

Recupera información sobre tu Cloud TPU

Puedes recuperar información sobre una Cloud TPU especificada.

gcloud

$ gcloud compute tpus tpu-vm describe tpu-name \
  --zone=zone

Console

  1. En la consola de Google Cloud, ve a la página TPU:

    Ir a TPU

  2. Haz clic en el nombre de tu Cloud TPU. En la consola, se muestran los la página de detalles de Cloud TPU.

Detén tus recursos de Cloud TPU

Puedes detener una sola Cloud TPU para dejar de generar cargos sin perder los configuración y software.

gcloud

$ gcloud compute tpus tpu-vm stop tpu-name \
  --zone=zone

Console

  1. En la consola de Google Cloud, ve a la página TPU:

    Ir a TPU

  2. Selecciona la casilla de verificación junto a tu Cloud TPU.

  3. Haz clic en Detener.

Inicia tus recursos de Cloud TPU

Puedes iniciar una Cloud TPU cuando está detenida.

gcloud

$ gcloud compute tpus tpu-vm start tpu-name \
  --zone=zone

Console

  1. En la consola de Google Cloud, ve a la página TPU:

    Ir a TPU

  2. Selecciona la casilla de verificación junto a tu Cloud TPU.

  3. Haz clic en Start.

Borra una Cloud TPU

Borra las porciones de VM de TPU al final de la sesión.

gcloud

$ gcloud compute tpus tpu-vm delete tpu-name \
  --project=project-id \
  --zone=zone \
  --quiet

Descripciones de las marcas de comandos

zone
La zona en la que planeas borrar tu Cloud TPU.

Console

  1. En la consola de Google Cloud, ve a la página TPU:

    Ir a TPU

  2. Selecciona la casilla de verificación junto a tu Cloud TPU.

  3. Haz clic en Borrar.