Referência da CTPU
Visão geral
A ferramenta de código aberto ctpu
é usada para criar um lote de recursos de computação, que consistem em uma VM do Compute Engine e em um ou mais dispositivos da Cloud TPU. Essa ferramenta vem pré-instalada no Cloud Shell.
No GitHub, é possível encontrar a documentação e o código de ctpu
(em inglês).
A ferramenta ctpu
usa a seguinte sintaxe:
ctpu <subcommand> <flags> <subcommand> <subcommand args>
A seguir, os subcomandos para ctpu
:
auth
- Descrição
- Define ou exibe autorizações para Cloud TPUs.
- Uso
ctpu auth <flags> <subcommand> <subcommand args>
- Exemplo
ctpu auth list --project="my-project" --zone=us-central1-a ctpu auth list --project my-project --zone us-central1-a
- Subcomandos
O comando
ctpu auth
é compatível com os seguintes subcomandos:- add-bigtable - garante que a Cloud TPU seja autorizada para o Cloud Bigtable
- add-gcs - garante que o Cloud TPU seja autorizado para o Cloud Storage
- list - exibe autorizações de conta de serviço do Cloud TPU
- commands - lista todos os nomes de comandos
- flags - descreve todos os sinalizadores de nível superior conhecidos
- help - descreve subcomandos e suas sintaxes
- Sinalizações opcionais
Os comandos a seguir são opcionais para
ctpu auth
.name | project | zone
delete (rm)
- Descrição
- Exclui a VM do Compute Engine e a Cloud TPU.
- Uso
ctpu rm <flags>
- Exemplo
ctpu rm --zone=us-central1-b
help
- Descrição
- Lista todos os subcomandos
ctpu
e sinalizações de nível superior. - Uso
ctpu help ctpu help <subcommand>
- Exemplo
ctpu help // list all ctpu subcommands and top level flags ctpu help auth // list all flags that can be used with `ctpu auth` ctpu help up // list all flags that can be used with `ctpu up`
list (ls)
- Descrição
- Lista todas as VMs do Compute Engine e a Cloud TPU na zona especificada.
- Uso
ctpu ls <flags>
- Exemplo
ctpu ls --zone=us-central1-b
pause (zz)
- Descrição
Interrompe a VM do Compute Engine e exclui a Cloud TPU. Interrompe a cobrança pelo uso da Cloud TPU até que você execute
ctpu up
.Para garantir que a Cloud TPU seja interrompida, especifique a zona e o nome dela na linha de comando.
- Uso
ctpu pause <name, zone>
- Exemplo
ctpu pause --name=my-tpu --zone=us-central1-a // pause the named TPU in the specified zone
print-config (cfg)
- Descrição
- Exibe na tela a configuração atual do nome da Cloud TPU, do projeto e da zona.
- Exemplo
ctpu print-config
quota
- Descrição
- Exiba um URL em que as cotas podem ser vistas.
- Uso
ctpu quota
- Exemplo
ctpu quota Output: Quotas cannot currently be displayed within
ctpu
. To view your quota, open <url> Request additional quota from <url>
restart
- Descrição
Reinicia uma Cloud TPU que ainda está no estado RUNNING (mostrado em
ctpu status
), mas parou de ser executada devido a um problema de hardware. Usegcloud compute tpu start
ou START. na página Compute Engine > Página "TPUs" no console do Cloud se a TPU estiver no estado INTERROMPIDO.restart
não reinicia uma Cloud TPU interrompida. Se a Cloud TPU tiver sido interrompida, executectpu delete
ectpu up
.- Uso
ctpu restart <flags>
- Exemplo
ctpu restart --zone=us-central1-a
status (st)
- Descrição
Consulta as APIs do GCP (somente na zona padrão) para determinar o status atual da Cloud TPU e da VM do Compute Engine.
- Uso
ctpu st
- Exemplo
ctpu st --zone=us-central1-a Status message: Your cluster is running! Compute Engine VM: RUNNING Cloud TPU: RUNNING
tpu-locations.
- Descrição
- Lista todas as zonas em que os tipos de TPU estão disponíveis.
- Uso
- ctpu tpu-locations
- Saída
Cloud TPU Locations: asia-east1-c europe-west4-a us-central1-a us-central1-b us-central1-c
tpu-sizes
- Descrição
- Lista todos os tamanhos de TPU disponíveis na zona especificada. Alguns tamanhos estão disponíveis somente em algumas zonas. (padrão = zona padrão)
- Uso
tpu-sizes <zone>
- Exemplo
ctpu tpu-sizes --zone=us-central1-a
up
- Descrição
Chama um conjunto de recursos
ctpu
. Na primeira vez que você executarctpu up
em um projeto, ele leva mais tempo do que nas execuções seguintes porque está realizando tarefas como propagação de chave SSH e ativação de API.- Ativa os serviços do Cloud TPU e Compute Engine.
- Cria uma VM do Compute Engine com a última versão estável do TensorFlow pré-instalada.
- Atribui uma zona padrão, como
us-central1-b
, com base na sua localização. - Comunica o nome da Cloud TPU para a VM do Compute Engine como uma variável de ambiente (
TPU_NAME
). - Garante que o Cloud TPU tenha acesso aos recursos necessários do projeto do Google Cloud, concedendo papéis específicos do IAM à conta de serviço do Cloud TPU.
- Executa várias outras verificações.
- Faz seu login na nova VM do Compute Engine. O prompt de shell muda de
username@project
parausername@tpuname
.
É possível executar
ctpu up
com a frequência que você quiser. Por exemplo, se você perder a conexão SSH com a VM do Compute Engine, executectpu up
para restaurar a conexão. Especifique uma zona se o Compute Engine não estiver na zona padrão. Exemplo:$ ctpu up --zone=us-central1-a
- Uso
ctpu up <flags>
- Exemplo
ctpu up --tpu-size=v2-8 --disk-size-gb=320 --preemptible
- Sinalizações
--disk-size-gb
Configura o tamanho do volume raiz da VM do Compute Engine. Ele precisa ser um número inteiro (padrão = 250).--dry-run
Não faz alterações. Imprime apenas o que teria acontecido.--forward-agent
Ativa o encaminhamento do agente SSH ao usá-lo na VM do Compute Engine. O encaminhamento do agente SSH permite o acesso a repositórios compartilhados (como o GitHub) sem ter que colocar chaves privadas na VM do Compute Engine (padrão = true).--forward-ports
Encaminha automaticamente as portas úteis da VM do Compute Engine para a máquina local. As portas encaminhadas são: 6006 (TensorBoard), 8888 (notebooks do jupyter), 8470 (porta TPU) e 8466 (porta de criador de perfis TPU). Padrão = true.--gce-image
Substitui a imagem do Compute Engine escolhida automaticamente. Use essa sinalização com suas próprias imagens personalizadas, em vez das fornecidas com o TensorFlow instalado.--gcp-network
Especifica a rede em que a Cloud TPU e a VM associada são criadas. Consulte a Visão geral da rede de nuvem privada virtual (VPC) para informações sobre redes (padrão = rede padrão).--log-http
Imprime o conteúdo completo dos pares de solicitação/resposta HTTP. Para ativar a impressão, defina esta sinalização como true. Use-a quando precisar de saída de registro para arquivar um relatório de bug emctpu
. Consultectpu
README (em inglês) para mais detalhes.--machine-type
Configura o tamanho da sua VM do Compute Engine. Uma lista completa dos tipos de máquinas está disponível na página Tipos de máquinas do Cloud (padrão = n1-standard-2)--name
Substitui o nome a ser usado para as VMs e a Cloud TPU (padrão = seu nome de usuário).--noconf
Ignora a confirmação.--preemptible
Cria um nó da Cloud TPU preemptiva. Um Cloud TPU preemptivo custa menos por hora do que um não preemptivo. O serviço do Cloud TPU pode encerrar um dispositivo preemptivo a qualquer momento. (padrão = não preemptivo)--preemptible-vm
Cria uma VM preemptiva do Compute Engine. Ela custa menos por hora que uma não preemptiva. O serviço do Compute Engine pode encerrar a instância de VM a qualquer momento. (padrão = não preemptivo)--print-welcome
Sempre imprime a mensagem de boas-vindas.--project
Substitui o nome do projeto do GCP a ser usado ao alocar VMs e TPUs. Especifica um valor a partir dos metadados da configuração em nuvem ou do Compute Engine, normalmente o nome do projeto. Se um valor bom não puder ser encontrado, forneça um na linha de comando.--tf-version
Define a versão do TensorFlow a ser usada ao criar a VM do Compute Engine e a Cloud TPU (padrão = última versão estável).--tpu-only
Aloca apenas uma Cloud TPU. Use isso somente se você já tiver uma VM disponível.--tpu-size
Configura o tamanho e a versão de hardware de uma Cloud TPU.--use-dl-images
Usa imagens de VM de aprendizado profundo em vez de imagens de máquina da TPU (padrão = imagens da máquina da TPU). Consulte os documentos: https://cloud.google.com/deep-learning-vm/.--vm-only
Aloca apenas uma VM. Use isso se você não estiver pronto para configurar e pagar por uma TPU.--zone
Substitua a zona do Compute Engine que será usada para alocar VMs e o Cloud TPU. Na linha de comando, executectpu help up
para visualizar a lista.
versão
- Descrição
- Imprime a versão do
ctpu
instalado. - Uso
ctpu version
- Saída
ctpu version Output: ctpu version: 1.9