Gerenciar VMs spot da TPU
As VMs do Spot disponibilizam capacidade não utilizada com taxas de desconto. As VMs spot podem ser interrompidas (desativadas) a qualquer momento, mas, ao contrário dos TPUs preemptivos, não há limite na duração do tempo de execução. Não é possível reiniciar VMs spot da TPU. Elas precisam ser recriadas após a preempção. Para mais informações sobre VMs spot em geral, consulte a documentação do Compute Engine sobre VMs 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 informações, consulte o guia do usuário de recursos em fila.
O exemplo a seguir mostra como criar VMs spot de TPU usando recursos em fila:
gcloud
Adicione a flag --spot
ao comando gcloud compute tpus queued-resources
:
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
Adicione spot: {}
ao corpo da solicitação:
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: {} }'
Console
No console do Google Cloud, acesse a página TPUs:
Clique em Criar TPU.
No campo Nome, insira um nome para a TPU.
Na caixa Zona, selecione a zona em que você quer criar a TPU.
Na caixa Tipo de TPU, selecione um tipo de acelerador. O tipo de acelerador especifica a versão e o tamanho da Cloud TPU que você quer criar. Para mais informações sobre os tipos de aceleradores compatíveis com cada versão de TPU, consulte Versões de TPU.
Na caixa Versão do software de TPU, selecione uma versão do software. Ao criar uma VM do Cloud TPU, a versão do software da TPU especifica a versão do ambiente de execução da TPU que será instalada. Para mais informações, consulte Imagens de VM de TPU.
Clique no botão Ativar fila.
No campo Nome do recurso em fila, digite um nome para a solicitação de recurso em fila.
Expanda a seção Gerenciamento.
Marque a caixa de seleção Transformar esta VM em uma spot da TPU.
Clique em Criar.
Também é possível criar VMs spot de TPU sem usar recursos na fila:
gcloud
Adicione a flag --spot
ao comando gcloud compute tpus tpu-vm
:
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
Adicione scheduling_config: {spot: true}
ao corpo da solicitação:
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} }'
Console
No console do Google Cloud, acesse a página TPUs:
Clique em Criar TPU.
No campo Nome, insira um nome para a TPU.
Na caixa Zona, selecione a zona em que você quer criar a TPU.
Na caixa Tipo de TPU, selecione um tipo de acelerador. O tipo de acelerador especifica a versão e o tamanho da Cloud TPU que você quer criar. Para mais informações sobre os tipos de aceleradores compatíveis com cada versão de TPU, consulte Versões de TPU.
Na caixa Versão do software de TPU, selecione uma versão do software. Ao criar uma VM do Cloud TPU, a versão do software da TPU especifica a versão do ambiente de execução da TPU que será instalada. Para mais informações, consulte Imagens de VM de TPU.
Expanda a seção Gerenciamento.
Marque a caixa de seleção Transformar esta VM em uma spot da TPU.
Clique em Criar.
Verificar se uma VM TPU é uma VM spot
gcloud
Para confirmar se a VM TPU é uma VM spot, use o comando "describe":
gcloud compute tpus tpu-vm describe TPU_NAME --zone=europe-west4-a
Se a VM TPU for uma VM spot, a saída incluirá o campo spot
definido como true
, semelhante a este:
...
schedulingConfig:
spot: true
...
Console
No console do Google Cloud, acesse a página TPUs:
Clique no nome do Cloud TPU.
Se a VM TPU for uma VM spot, o nível será VM do Spot.
Preços e cotas
O preço das VMs spot de TPU é significativamente menor do que o das TPUs sob demanda e 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.