Gestire le VM TPU spot
Le VM spot rendono disponibile la capacità inutilizzata a tariffe molto scontate. Le VM spot possono essere prelevate (chiuse) in qualsiasi momento, ma a differenza delle TPU prerilasciabili, non esiste un limite alla durata del tempo di esecuzione. Non puoi riavviare le VM spot TPU e devi ricrearle dopo la preemption. Per maggiori informazioni sulle VM spot in generale, consulta la documentazione di Compute Engine sulle VM spot.
Crea VM TPU spot
Puoi creare VM TPU spot utilizzando risorse in coda, il che aggiunge la richiesta di creazione a una coda e ti consente di ricevere la capacità quando diventa disponibile. La creazione di TPU come risorse in coda è una best practice. Per ulteriori informazioni, consulta la Guida dell'utente per le risorse in coda.
Crea VM TPU spot come risorse in coda aggiungendo il flag --spot
al comando di creazione delle risorse in coda:
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: {} }'
Puoi anche creare VM TPU Spot senza utilizzare risorse in coda aggiungendo il flag --spot
al comando create:
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} }'
Verificare se una VM TPU è una VM spot
Per verificare se la tua VM TPU è una VM spot, utilizza il comando describe:
gcloud compute tpus tpu-vm describe TPU_NAME --zone=europe-west4-a
Se la VM TPU è una VM spot, l'output includerà il
spot
campo impostato su true
, in modo simile al seguente:
...
schedulingConfig:
spot: true
...
Prezzi e quote
I prezzi delle VM spot TPU sono notevolmente inferiori a quelli delle TPU on demand e riservate. Per ulteriori informazioni sui prezzi, consulta la pagina Prezzi di Cloud TPU.
Per utilizzare le VM spot TPU, devi disporre di una quota preassegnata. Per ulteriori informazioni, consulta Quote.