Gérer les VM TPU Spot

Les VM Spot assurent la capacité inutilisée à des tarifs très réduits. Les VM Spot peuvent être préemptées (arrêtées) à tout moment, mais contrairement aux TPU préemptifs, la durée d'exécution n'est pas limitée. Vous ne pouvez pas redémarrer les VM TPU Spot. 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 de Compute Engine sur les VM Spot.

Créer des VM TPU Spot

Vous pouvez créer des VM TPU Spot à l'aide de ressources en file d'attente, ce qui ajoute votre requête de création à une file d'attente et vous permet de recevoir de la capacité dès 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 TPU Spot en tant que ressources en file d'attente en ajoutant l'option --spot à la commande de création de ressources en file d'attente:

gcloud

gcloud alpha 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.16.1-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.16.1-pod-pjrt"
        }
      }
    },
    spot: {}
  }'

Vous pouvez également créer des VM TPU Spot 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.16.1-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.16.1-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

Les tarifs des VM TPU Spot sont nettement inférieurs à ceux des TPU à la demande et réservés. Pour en savoir plus sur la tarification, consultez la page Tarifs de Cloud TPU.

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