Crea VMs de TPU con inicio flexible con Compute Engine

Las VMs de TPU con inicio flexible, que cuentan con la tecnología de programador dinámico de cargas de trabajo, proporcionan una forma flexible y rentable de acceder a los recursos TPU de las cargas de trabajo de IA durante un máximo de 7 días sin reservas a largo plazo. Cuando solicitas VMs de TPU con inicio flexible, tu solicitud permanece en una cola hasta que la capacidad esté disponible. Una vez aprovisionadas, las VMs de TPU se ejecutan durante el período especificado.

Las VMs de TPU con inicio flexible son una buena opción para la experimentación rápida, las pruebas a pequeña escala, el aprovisionamiento dinámico de TPU destinado a cargas de trabajo de inferencia, el ajuste de modelos y las ejecuciones de cargas de trabajo que tardan menos de 7 días. Para obtener más información sobre otras opciones de consumo de TPU, consulta Opciones de consumo de Cloud TPU.

Puedes borrar los recursos de TPU en cualquier momento para detener la facturación. Para obtener más información sobre los precios de las TPU, consulta Precios de Cloud TPU.

Limitaciones

Las VMs de TPU con inicio flexible tienen las limitaciones que se indican a continuación:

  • Puedes solicitar VMs de TPU con inicio flexible para un período de hasta 7 días.
  • Puedes solicitar las versiones y zonas de Cloud TPU que se indican a continuación:
    • TPU7x: us-central1-c
    • TPU v6e: asia-northeast1-b, us-east5-a, us-south1-ai1b
    • TPU v5p: us-east5-a

Los MIG con TPU tienen las siguientes limitaciones:

  • Operaciones del ciclo de vida: No puedes detener, iniciar, reanudar ni suspender instancias de TPU. Para cambiar las configuraciones que requieren un reinicio o para dejar de generar cargos, debes borrar las instancias.

  • Distribución de zonas de MIG regionales: Debes configurar la forma de distribución objetivo como ANY_SINGLE_ZONE.

  • Actualizaciones de configuración en un MIG:

    • No puedes actualizar un MIG que forma una porción de TPU de varios hosts debido a la topología de acelerador definida.
    • Puedes actualizar un MIG que forma porciones de TPU de host único con los métodos automáticos o selectivos. Sin embargo, las actualizaciones de la porción de TPU de host único no admiten la acción de reinicio (RESTART). Si es necesario un reinicio y la acción más disruptiva permitida es reemplazar (REPLACE), el actualizador reemplazará la instancia; de lo contrario, el intento de actualización fallará con un error.

  • En el caso de un MIG que forma una porción de TPU de varios hosts, también se aplican las siguientes limitaciones:

    • Política de tamaño objetivo: Debes configurar el modo de política de tamaño objetivo como BULK. Después de configurar este modo, no podrás cambiarlo.

    • Tamaño objetivo: En el modo masivo, puedes configurar el tamaño objetivo como 0 o la cantidad de instancias que se requieren para formar la topología del acelerador.

    • Política de cargas de trabajo: Debes especificar una política de cargas de trabajo en la que se defina la topología del acelerador. Después de configurar la política de cargas de trabajo, no podrás cambiarla ni quitarla del MIG.

  • Funciones no compatibles: Los MIG con TPU no admiten las siguientes funciones:

Antes de comenzar

Antes de solicitar VMs de TPU con inicio flexible, debes seguir los pasos que se indican más abajo:

  • Instalar la Google Cloud CLI
  • Crear un Google Cloud proyecto de
  • Habilitar la API de Compute Engine (compute.googleapis.com)
  • Asegurarte de tener los permisos necesarios:
    • roles/compute.instanceAdmin.v1
    • roles/iam.serviceAccountUser

Para obtener más información, consulta Configura un Google Cloud proyecto de para las TPU.

Asegúrate de tener suficiente cuota de recursos interrumpibles para usar las VMs de TPU con inicio flexible. Si tu carga de trabajo requiere más núcleos que tu asignación actual, puedes solicitar un aumento de la cuota. Para obtener más detalles, consulta Cuotas de Cloud TPU.

Crea VMs de TPU con inicio flexible con MIG

Para usar VMs de TPU con inicio flexible, crea un grupo de instancias administrado (MIG) con una configuración de plantilla de instancias específica.

Para obtener instrucciones generales sobre cómo crear VMs con inicio flexible, consulta Crea VMs con inicio flexible.

Crea VMs de TPU con inicio flexible con una porción de varios hosts

Crea una plantilla de instancias

Crea una plantilla de instancias que especifique el modelo de aprovisionamiento FLEX_START y la duración de ejecución elegida.

gcloud compute instance-templates create TEMPLATE_NAME \
    --machine-type=MACHINE_TYPE \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --provisioning-model=FLEX_START \
    --instance-termination-action=DELETE \
    --max-run-duration=DURATION \
    --region=REGION \
    --maintenance-policy=TERMINATE

Reemplaza los marcadores de posición que se indican más abajo:

  • TEMPLATE_NAME: Es el nombre de la plantilla de instancias.
  • MACHINE_TYPE: Es el tipo de máquina de la VM de TPU (por ejemplo, ct6e-standard-8t).
  • IMAGE_FAMILY: Es la familia de imagen de SO para la VM de TPU (por ejemplo, ubuntu-accelerator-2204-amd64-with-tpu-v6e).
  • IMAGE_PROJECT: Es el proyecto de imagen de SO para la VM de TPU (por ejemplo, ubuntu-os-accelerator-images).
  • DURATION: Es la duración máxima de ejecución (por ejemplo, 7d durante 7 días).
  • REGION: Es la región en la que se creará la plantilla de instancias.

Crear una política de cargas de trabajo

Con el siguiente comando se crea una política de cargas de trabajo. Esto es opcional para las porciones de host único.

gcloud compute resource-policies create workload WORKLOAD_POLICY_NAME \
  --type=high-throughput \
  --accelerator-topology=TOPOLOGY

Reemplaza los marcadores de posición que se indican más abajo:

  • WORKLOAD_POLICY_NAME: Es el nombre de tu política de cargas de trabajo.
  • TOPOLOGY: Es la topología de las VMs de TPU, por ejemplo, 4x4x8.

Crea el MIG

Crea el MIG con la plantilla.

gcloud compute instance-groups managed create MIG_NAME \
    --zone=ZONE \
    --template=TEMPLATE_NAME \
    --size=SIZE \
    --workload-policy=projects/PROJECT_ID/regions/WORKLOAD_POLICY_REGION/resourcePolicies/WORKLOAD_POLICY_NAME \
    --target-size-policy-mode=bulk

Reemplaza los marcadores de posición que se indican más abajo:

  • MIG_NAME: Es el nombre de tu MIG.
  • ZONE: Es la zona de tu MIG.
  • TEMPLATE_NAME: Es el nombre de la plantilla de instancias.
  • SIZE: Es la cantidad de instancias que se crearán.
  • PROJECT_ID: Es el ID de tu Google Cloud proyecto.
  • WORKLOAD_POLICY_REGION: Es la región en la que se define la política de cargas de trabajo.
  • WORKLOAD_POLICY_NAME: Es el nombre de tu política de cargas de trabajo.

Crea VMs de TPU con inicio flexible con porciones de host único

Crea una plantilla de instancias

Crea una plantilla de instancias que especifique el modelo de aprovisionamiento FLEX_START y la duración de ejecución elegida.

gcloud compute instance-templates create TEMPLATE_NAME \
    --machine-type=MACHINE_TYPE \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --provisioning-model=FLEX_START \
    --instance-termination-action=DELETE \
    --max-run-duration=DURATION \
    --region=REGION \
    --maintenance-policy=TERMINATE

Reemplaza los marcadores de posición que se indican más abajo:

  • TEMPLATE_NAME: Es el nombre de la plantilla de instancias.
  • MACHINE_TYPE: Es el tipo de máquina de la VM de TPU (por ejemplo, ct6e-standard-8t).
  • IMAGE_FAMILY: Es la familia de imagen de SO para la VM de TPU (por ejemplo, ubuntu-accelerator-2204-amd64-with-tpu-v6e).
  • IMAGE_PROJECT: Es el proyecto de imagen de SO para la VM de TPU (por ejemplo, ubuntu-os-accelerator-images).
  • DURATION: Es la duración máxima de ejecución (por ejemplo, 7d durante 7 días).
  • REGION: Es la región en la que se creará la plantilla de instancias.

Crear una política de cargas de trabajo

Con el siguiente comando se crea una política de cargas de trabajo. Esto es opcional para las porciones de host único.

gcloud compute resource-policies create workload WORKLOAD_POLICY_NAME \
  --type=high-throughput

Reemplaza los marcadores de posición que se indican más abajo:

  • WORKLOAD_POLICY_NAME: Es un nombre para tu política de cargas de trabajo.

Crea el MIG

Crea el MIG con la plantilla.

gcloud compute instance-groups managed create MIG_NAME \
    --zone=ZONE \
    --template=TEMPLATE_NAME \
    --size=SIZE \
    --workload-policy=projects/PROJECT_ID/regions/WORKLOAD_POLICY_REGION/resourcePolicies/WORKLOAD_POLICY_NAME

Reemplaza los marcadores de posición que se indican más abajo:

  • MIG_NAME: Es el nombre de tu MIG.
  • ZONE: Es la zona de tu MIG.
  • TEMPLATE_NAME: Es el nombre de la plantilla de instancias.
  • SIZE: Es la cantidad de instancias que se crearán.
  • PROJECT_ID: Es el ID de tu Google Cloud proyecto.
  • WORKLOAD_POLICY_REGION: Es la región en la que se define la política de cargas de trabajo.
  • WORKLOAD_POLICY_NAME: Es el nombre de tu política de cargas de trabajo.