Gerenciar VMs spot da TPU
As VMs do Spot disponibilizam capacidade não utilizada com taxas com grandes descontos. As VMs spot podem ser interrompidas (encerradas) a qualquer momento, mas ao contrário do preemptivo TPUs, não há limite de duração do ambiente de execução. Você não pode reiniciar as VMs spot da TPU e será necessário recriá-las após a preempção. Para mais informações sobre VMs do Spot em geral, consulte a documentação do Compute Engine sobre VMs do Spot.
Criar VMs do Spot da TPU
É possível criar VMs spot de TPU usando recursos enfileirados, o que adiciona sua solicitação de criação a uma fila e permite que você receba capacidade quando ela estiver disponível. Criar TPUs como recursos em fila é uma prática recomendada. Para mais mais informações, consulte o Guia do usuário sobre recursos na fila.
Crie VMs spot de TPU como recursos na fila adicionando a sinalização --spot
a
o comando "resource" na fila: create:
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: {} }'
Também é possível criar VMs spot da TPU sem usar recursos na fila.
adicionando a flag --spot
ao comando "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} }'
Verificar se uma VM da TPU é spot
Para confirmar se a VM TPU é uma VM do Spot, use o comando "describe":
gcloud compute tpus tpu-vm describe TPU_NAME --zone=europe-west4-a
Se a VM da TPU for spot, a saída incluirá o
Campo spot
definido como true
, semelhante ao seguinte:
...
schedulingConfig:
spot: true
...
Preços e cotas
O preço das VMs spot da TPU é significativamente mais baixo do que o das VMs sob demanda e e TPUs reservadas. Para mais informações sobre preços, consulte Preços do Cloud TPU.
Você precisa de uma cota preemptiva para usar VMs do Spot da TPU. Para mais informações, consulte Cotas.