Criar uma instância de TPU
Neste documento, mostramos como criar uma instância de máquina virtual (VM) da TPU, conectar-se a ela e executar um cálculo nela. A instância de TPU criada neste guia de início rápido usa a opção on demand, que é a opção de consumo padrão.
Antes de começar
- Faça login na sua conta do Google Cloud . Se você começou a usar o Google Cloud, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
-
Instale a CLI do Google Cloud.
-
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init -
Crie ou selecione um Google Cloud projeto.
Funções necessárias para selecionar ou criar um projeto
- Selecionar um projeto: não é necessário um papel específico do IAM para selecionar um projeto. Você pode escolher qualquer projeto em que tenha recebido um papel.
-
Criar um projeto: para criar um projeto, é necessário ter o papel de Criador de projetos
(
roles/resourcemanager.projectCreator), que contém a permissãoresourcemanager.projects.create. Saiba como conceder papéis.
-
Crie um projeto do Google Cloud :
gcloud projects create PROJECT_ID
Substitua
PROJECT_IDpor um nome para o projeto Google Cloud que você está criando. -
Selecione o projeto Google Cloud que você criou:
gcloud config set project PROJECT_ID
Substitua
PROJECT_IDpelo nome do projeto do Google Cloud .
-
Se este guia estiver usando um projeto atual, verifique se você tem as permissões necessárias para concluir o guia. Se você criou um projeto, já tem as permissões necessárias.
-
Verifique se o faturamento está ativado para o projeto do Google Cloud .
Ative a API Compute Engine:
Funções necessárias para ativar APIs
Para ativar as APIs, é necessário ter o papel do IAM de administrador de uso do serviço (
roles/serviceusage.serviceUsageAdmin), que contém a permissãoserviceusage.services.enable. Saiba como conceder papéis.gcloud services enable compute.googleapis.com
-
Instale a CLI do Google Cloud.
-
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init -
Crie ou selecione um Google Cloud projeto.
Funções necessárias para selecionar ou criar um projeto
- Selecionar um projeto: não é necessário um papel específico do IAM para selecionar um projeto. Você pode escolher qualquer projeto em que tenha recebido um papel.
-
Criar um projeto: para criar um projeto, é necessário ter o papel de Criador de projetos
(
roles/resourcemanager.projectCreator), que contém a permissãoresourcemanager.projects.create. Saiba como conceder papéis.
-
Crie um projeto do Google Cloud :
gcloud projects create PROJECT_ID
Substitua
PROJECT_IDpor um nome para o projeto Google Cloud que você está criando. -
Selecione o projeto Google Cloud que você criou:
gcloud config set project PROJECT_ID
Substitua
PROJECT_IDpelo nome do projeto do Google Cloud .
-
Se este guia estiver usando um projeto atual, verifique se você tem as permissões necessárias para concluir o guia. Se você criou um projeto, já tem as permissões necessárias.
-
Verifique se o faturamento está ativado para o projeto do Google Cloud .
Ative a API Compute Engine:
Funções necessárias para ativar APIs
Para ativar as APIs, é necessário ter o papel do IAM de administrador de uso do serviço (
roles/serviceusage.serviceUsageAdmin), que contém a permissãoserviceusage.services.enable. Saiba como conceder papéis.gcloud services enable compute.googleapis.com
Funções exigidas
Para receber as permissões necessárias para criar uma instância de TPU, se conectar a ela usando SSH e executar comandos, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto:
- Administrador da instância do Compute (v1) (
roles/compute.instanceAdmin.v1) - Usuário da conta de serviço (
roles/iam.serviceAccountUser) - Administrador do Service Usage (
roles/serviceusage.serviceUsageAdmin)
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias usando papéis personalizados ou outros papéis predefinidos.
Criar uma instância de TPU
Execute os comandos a seguir no terminal local ou usando o Cloud Shell.
Para criar uma instância de TPU, execute o seguinte comando
gcloud compute instances create:gcloud compute instances create quickstart-tpu \ --machine-type=ct6e-standard-4t \ --zone=us-east5-b \ --image-project=ubuntu-os-accelerator-images \ --image-family=ubuntu-accelerator-2204-amd64-with-tpu-v6eSe quiser, verifique se a instância está em execução usando o comando
gcloud compute instances describe:gcloud compute instances describe quickstart-tpu --zone=us-east5-bNa saída, verifique o campo
statuspara verificar se a instância está em execução ou ainda pendente.
Conectar-se à instância de TPU
É possível se conectar a uma instância de TPU usando o console do Google Cloud ou a CLI gcloud.
Para se conectar à VM usando SSH, execute o seguinte comando gcloud compute
ssh:
gcloud compute ssh quickstart-tpu --project=PROJECT_ID --zone=us-east5-b
Instalar o JAX
Instale o framework JAX executando o seguinte comando na instância de TPU:
pip install jax[tpu] -f https://storage.googleapis.com/jax-releases/libtpu_releases.html
Executar uma verificação do sistema
Verifique se o JAX pode acessar a TPU e executar operações básicas com os seguintes comandos na instância de TPU:
Inicie o interpretador do Python 3:
python3Importe o módulo JAX:
>>> import jaxConfira o número de núcleos de TPU disponíveis:
>>> jax.device_count()A saída mostra o número de núcleos de TPU. O número de núcleos depende da versão da TPU que você está usando. Para mais informações, consulte Versões de TPU.
Fazer um cálculo
Execute o comando a seguir para somar dois números:
>>> jax.numpy.add(1, 1)A saída será semelhante a esta:
>>> Array(2, dtype=int32, weak_type=True)Saia do interpretador Python:
>>> exit()
Limpar
Para evitar cobranças na conta do Google Cloud pelos recursos usados nesta página, exclua o projeto do Google Cloud e os recursos.
gcloud compute instances delete quickstart-tpu --zone=us-east5-b