Como gerenciar recursos de VM e TPU

Visão geral

A execução de um modelo de machine learning (ML) requer uma VM do Compute Engine e recursos do Cloud TPU. Nesta página, você verá como gerenciar esses recursos usando:

  • o utilitário ctpu, que fornece uma CLI projetada especificamente para gerenciar recursos do Cloud TPU;
  • a ferramenta de linha de comando gcloud commands, que fornece a CLI principal para o Google Cloud Platform (GCP);
  • o Console do Cloud, que fornece um console de gerenciamento integrado para os recursos do GCP.

Como configurar uma VM do Compute Engine e recursos do Cloud TPU

É possível alocar e iniciar os recursos da VM e do TPU usando o utilitário ctpu, os comandos gcloud ou o Console do Cloud.

ctpu

Execute o comando a seguir a partir de um Cloud Shell. O utilitário "ctpu" cria os recursos do Cloud TPU e da VM do Compute Engine juntos e com o mesmo nome.

$ ctpu up [optional: --name --zone --tpu-size --machine-type --disk-size-gb]

comandos gcloud

O SDK do Cloud é um conjunto de ferramentas para interagir com o GCP na linha de comando do Cloud Shell.

  1. Instale a ferramenta de linha de comando gcloud por meio do SDK do Cloud.
  2. Use a ferramenta de linha de comando gcloud para especificar o projeto do GCP:
    $ gcloud config set project [YOUR-CLOUD-PROJECT]
    
  3. Especifique a zona em que planeja criar a VM do Compute Engine e o recurso do Cloud TPU. Neste exemplo, use a zona "us-central1-b":
    $ gcloud config set compute/zone [YOUR-ZONE]
    

    Como referência, o Cloud TPU está disponível nas seguintes zonas:

    EUA

    Cloud TPU v2 e Preemptiva v2 us-central1-b
    us-central1-c
    us-central1-f (apenas o programa TFRC)
    Cloud TPU v3 e Preemptiva v3 us-central1-a
    us-central1-b
    us-central1-f
    (apenas o programa TFRC)
    Cloud TPU v2 Pod (versão Beta) us-central1-a

    Europa

    Cloud TPU v2 e Preemptiva v2 europe-west4-a
    Cloud TPU v3 e Preemptiva v3 europe-west4-a
    Cloud TPU v2 Pod (versão Beta) europe-west4-a
    Cloud TPU v3 Pod (versão Beta) europe-west4-a

    Ásia-Pacífico

    Cloud TPU v2 e Preemptiva v2 asia-east1-c

  4. Crie uma VM do Compute Engine para interagir com o Cloud TPU:

    Como a zona foi especificada no comando anterior, a instância da VM será criada nela.

    $ gcloud compute instances create [YOUR-VM/TPU-NAME]\
       --zone=[YOUR_ZONE]
       --machine-type=n1-standard-2 \
       --image-project=ml-images \
       --image-family=tf-1-13 \
       --scopes=cloud-platform
    

    Isso gerará uma saída semelhante a esta:

    NAME         ZONE           MACHINE_TYPE    PREEMPTIBLE INTERNAL_IP  EXTERNAL_IP    STATUS
    demo-vm-tpu  us-central1-b  n1-standard-1               10.138.0.2   35.247.15.162  RUNNING
    
  5. Crie um novo recurso do Cloud TPU. :
    $ gcloud compute tpus create [YOUR-VM/TPU-NAME] \
          --zone=[YOUR_ZONE] \
          --network=[YOUR_NETWORK_ID or default] \
          --accelerator-type=[YOUR-TPU-VERSION] \
          --range=[RANGE] \ # for example 192.168.0.0/29 \
          --version=1.13
    

    Isso gerará uma saída semelhante a esta:

    NAME         ZONE           ACCELERATOR_TYPE NETWORK_ENDPOINT  NETWORK  RANGE         STATUS
    demo-vm-tpu  us-central1-b  v2-8             10.240.1.2:8470   default  10.240.1.0/29 READY
    
  6. Conecte-se remotamente à VM do Compute Engine:
    $ gcloud compute ssh --zone=[YOUR_ZONE] [YOUR-VM/TPU-NAME]
    
  7. Crie uma variável de ambiente contendo o nome da TPU:
    $ export TPU_NAME=[YOUR-VM/TPU-NAME]
    

Console do Cloud

  1. Crie e inicie a VM.
    1. Vá para Compute Engine > Instâncias da VM na barra de navegação à esquerda e clique em CRIAR INSTÂNCIA.
    2. Na página Criar uma Instância, especifique um nome de instância, a região e o tipo de máquina.
  2. Crie, inicie e conecte-se ao Cloud TPU.
    1. Vá para Compute Engine> TPUs na barra de navegação à esquerda e clique em CRIAR NÓ DE TPU.
    2. Na página Criar uma Cloud TPU, especifique o nome do recurso de TPU, a zona e um endereço IP interno que serão usados pela Cloud TPU.
    3. Acesse Compute Engine > Instâncias de VM. Encontre a instância com o nome da VM e clique em SSH para se conectar a ela.

Como interromper seus recursos do Cloud TPU

Os recursos do Cloud TPU começam a ser cobrados quando o Cloud TPU é iniciado, mesmo antes de ativar o treinamento de um modelo. Para evitar ser cobrado enquanto o Cloud TPU estiver inativo, você pode interrompê-lo e reiniciá-lo quando estiver pronto para treinar um modelo.

Esta seção mostra como interromper o Cloud TPU usando o utilitário ctpu, os comandos gcloud ou o Cloud Console.

ctpu

  1. Execute o comando "ctpu status" e especifique a zona em que seu Cloud TPU está configurado.

    $ ctpu status --zone=[YOUR-ZONE]

    Isso exibirá o status dos recursos do Cloud TPU e da VM do Compute Engine na zona.

    Your cluster is running!
    Compute Engine VM:  RUNNING
    Cloud TPU:          RUNNING
    
  2. Se o recurso do Cloud TPU estiver em execução, use o seguinte comando para interrompê-lo.

    $ ctpu pause --zone=[YOUR-ZONE]

    Isso interrompe a VM do Compute Engine e exclui os recursos do Cloud TPU na zona especificada. Para reiniciar apenas a VM do Compute Engine, execute o seguinte comando, incluindo outras sinalizações necessárias para a VM:

    $ ctpu up --zone=[YOUR-ZONE] --vm-only

    Para reiniciar o Cloud TPU, execute o ctpu up com as sinalizações que você definiu quando iniciou o Cloud TPU pela primeira vez.

Comando gcloud

  1. Execute o seguinte comando do Cloud Shell para listar os recursos disponíveis do Cloud TPU em sua zona.

    $ gcloud compute tpus list --zone=[YOUR-ZONE]
    

    O recurso do Cloud TPU na sua zona é exibido:

    NAME       ZONE           ACCELERATOR_TYPE  NETWORK_ENDPOINT   NETWORK  RANGE          STATUS
    demo-tpu   us-central1-b  v2-8              10.240.1.2:8470    default  10.240.1.0/29  READY
    
  2. Execute o seguinte comando para interromper o Cloud TPU:

    $ gcloud compute tpus stop [YOUR-TPU-NAME] --zone=[YOUR-ZONE]
    

Console do Cloud

  1. Selecione Compute Engine> TPUs na barra de navegação à esquerda. Clique em Parar na barra de menu na parte superior da página.
  2. Para reiniciar o Cloud TPU, clique em Iniciar.

Como visualizar os recursos do Cloud TPU e da VM do Compute Engine

Nesta seção, você verá como visualizar os recursos atuais de VM e TPU usando o utilitário ctpu, os comandos gcloud ou o Console do Cloud.

ctpu

Execute o comando "ctpu status" e especifique a zona em que os recursos do Cloud TPU e da VM do Compute Engine estão configurados.

$ ctpu status --zone=[YOUR-ZONE]

Isso exibirá o status dos recursos do Cloud TPU e da VM do Compute Engine na zona.

Your cluster is running!
Compute Engine VM:  RUNNING
Cloud TPU:          RUNNING

Se nenhum recurso estiver configurado ainda, a saída mostrará apenas traços para a VM e o TPU. Se um recurso estiver ativo e o outro não, uma mensagem informará que o status não é saudável. Inicie ou reinicie qualquer recurso que não esteja em execução.

Comando gcloud

  1. Execute o seguinte comando do Cloud Shell para listar os recursos disponíveis da VM do Compute Engine em zonas específicas. Neste exemplo, os recursos da VM em us-central1-b e europe-west4-a serão exibidos:

    $ gcloud compute instances list --filter="zone:( us-central1-b europe-west4-a )"
    

    O comando acima imprime os detalhes dos recursos da VM criados. Exemplo:

    NAME      ZONE           MACHINE_TYPE   PREEMPTIBLE  INTERNAL_IP  EXTERNAL_IP     STATUS
    demo-tpu  us-central1-b  n1-standard-1               10.128.0.33  35.232.214.205  RUNNING
    
    
  2. Execute o seguinte comando do Cloud Shell para listar os recursos disponíveis do Cloud TPU em sua zona. Neste exemplo, é exibida a zona selecionada como us-central1-b.

    $ gcloud compute tpus list --zone=us-central1-b
    

    O recurso do Cloud TPU em us-central1-b é exibido:

    NAME       ZONE           ACCELERATOR_TYPE  NETWORK_ENDPOINT   NETWORK  RANGE          STATUS
    demo-tpu   us-central1-b  v2-8              10.240.1.2:8470    default  10.240.1.0/29  READY
    

Console do Cloud

  1. No menu de navegação à esquerda, selecione Compute Engine > TPUs.

    Será exibida uma lista de todos os recursos ativos do Compute Engine.

  2. No menu de navegação à esquerda, selecione Compute Engine > Instâncias de VM.

    Será exibida uma lista de todos os recursos ativos do Compute Engine.

Como excluir os recursos do Cloud TPU e da VM do Compute Engine

É possível excluir os recursos de VM e TPU usando o utilitário ctpu, os comandos gcloud ou o Console do Cloud.

ctpu

Execute o comando a seguir a partir de um Cloud Shell. O utilitário "ctpu" exclui os recursos do Cloud TPU e da VM do Compute Engine.

$ ctpu delete [optional: --zone]

comandos gcloud

Caso não tenha definido o projeto e a zona para esta sessão, faça isso agora.

(vm)$ gcloud config set project [YOUR-CLOUD-PROJECT]
(vm)$ gcloud config set compute/zone [YOUR-ZONE]

Depois, siga este procedimento de limpeza:

  1. Desconecte-se da instância da VM do Compute Engine:
    (vm)$ exit
    
  2. Exclua a instância do Compute Engine
    $ gcloud compute instances delete [YOUR-VM/TPU-NAME]
    
  3. Exclua o recurso do Cloud TPU:
    $ gcloud compute tpus delete [YOUR-VM/TPU-NAME]
    
  4. Exclua a rede VPC que o Google criou automaticamente como parte da configuração do Cloud TPU.

    Acesse a página "Rede VPC" no Console do Google Cloud Platform.

  5. Selecione a rede VPC. A entrada da rede começa com cp-to-tp-peering no código.

    Na parte superior da página, clique em Excluir para excluir a rede VPC selecionada.

  6. Quando terminar de examinar os dados, use o comando gsutil para excluir todos os intervalos do Cloud Storage criados. Substitua YOUR-BUCKET-NAME pelo nome do intervalo do Cloud Storage.
    $ gsutil rm -r gs://[YOUR-BUCKET-NAME]
    

Console do Cloud

  1. Exclua a VM.
    1. Acesse Compute Engine > Instâncias de VM a partir da barra de navegação
    2. à esquerda.
    3. Selecione a instância de VM na lista. Clique no ícone da lixeira na parte superior da página.
  2. Exclua o Cloud TPU.
    1. Acesse Compute Engine > TPUs na barra de navegação à esquerda.
    2. Selecione o recurso de TPU na lista. Clique no ícone da lixeira na parte superior da página.
Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…