Gérer les VM Spot TPU

Les VM Spot rendent disponible la capacité inutilisée à des tarifs très avantageux. Les VM Spot peuvent être préemptées (arrêtées) à tout moment, mais contrairement aux TPU préemptibles, la durée d'exécution n'est pas limitée. Vous ne pouvez pas redémarrer les VM Spot TPU, et vous devez les recréer après la préemption. Pour en savoir plus sur les VM Spot en général, consultez la documentation Compute Engine sur les VM Spot.

Créer des VM Spot TPU

Vous pouvez créer des VM Spot TPU à l'aide de ressources en file d'attente, ce qui ajoute votre demande de création à une file d'attente et vous permet de recevoir de la capacité une fois qu'elle est disponible. Il est recommandé de créer des TPU en tant que ressources en file d'attente. Pour en savoir plus, consultez le guide de l'utilisateur des ressources en file d'attente.

Créez des VM Spot TPU en tant que ressources mises en file d'attente en ajoutant l'option --spot à la commande de création de ressources mises en file d'attente:

gcloud

gcloud compute tpus queued-resources create QUEUED_RESOURCE_ID \
  --node-id=NODE_ID \
  --zone=europe-west4-a \
  --accelerator-type=v3-8 \
  --runtime-version=tpu-vm-tf-2.18.0-pod-pjrt \
  --spot

curl

curl -X POST https://tpu.googleapis.com/v2alpha1/projects/PROJECT_ID/locations/europe-west4-a/queuedResources?queued_resource_id=QUEUED_RESOURCE_ID \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  -d '{
    tpu: {
      node_spec: {
        parent: "projects/PROJECT_ID/locations/europe-west4-a",
        node_id: "NODE_ID",
        node: {
          accelerator_type: "v3-8",
          runtime_version: "tpu-vm-tf-2.18.0-pod-pjrt"
        }
      }
    },
    spot: {}
  }'

Vous pouvez également créer des VM Spot TPU sans utiliser de ressources en file d'attente en ajoutant l'option --spot à la commande de création:

gcloud

gcloud compute tpus tpu-vm create TPU_NAME \
  --zone=europe-west4-a \
  --accelerator-type=v3-8 \
  --version=tpu-vm-tf-2.18.0-pod-pjrt \
  --spot

curl

curl -X POST https://tpu.googleapis.com/v2/projects/PROJECT_ID/locations/europe-west4-a/nodes?node_id=TPU_NAME \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  -d '{
    accelerator_type: "v3-8",
    runtime_version: "tpu-vm-tf-2.18.0-pod-pjrt",
    network_config: {enable_external_ips: true},
    scheduling_config: {spot: true}
  }'

Vérifier si une VM TPU est une VM Spot

Pour vérifier si votre VM TPU est une VM Spot, utilisez la commande describe:

gcloud compute tpus tpu-vm describe TPU_NAME --zone=europe-west4-a

Si la VM TPU est une VM Spot, la sortie inclut le champ spot défini sur true, comme suit:

...
schedulingConfig:
  spot: true
...

Tarifs et quotas

Le prix des VM Spot TPU est nettement inférieur à celui des TPU à la demande et réservés. Pour en savoir plus sur la tarification, consultez la section Tarifs des Cloud TPU.

Vous avez besoin d'un quota préemptif pour utiliser des VM Spot TPU. Pour en savoir plus, consultez la section Quotas.