Gérer les VM TPU Spot

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 plus d'informations sur les VM Spot en général, consultez la page 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 crée une requête dans une file d'attente et vous permet de recevoir de la capacité lorsqu'elle devient disponibles. 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 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.17.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.17.0-pod-pjrt"
        }
      }
    },
    spot: {}
  }'

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

gcloud

gcloud compute tpus tpu-vm create TPU_NAME \
  --zone=europe-west4-a \
  --accelerator-type=v3-8 \
  --version=tpu-vm-tf-2.17.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.17.0-pod-pjrt",
    network_config: {enable_external_ips: true},
    scheduling_config: {spot: true}
  }'

Vérifier si une VM TPU est une VM Spot

Pour confirmer que 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 VM à la demande et TPU réservés. Pour en savoir plus sur les tarifs, consultez la page Cloud TPU tarifs.

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