É possível criar um grupo de máquinas virtuais (VMs) que tenham unidades de processamento gráfico (GPUs) anexadas usando o processo de criação em massa. Com o processo de criação em massa, você tem uma validação antecipada em que a solicitação falha rapidamente se não for viável. Além disso, se você usar a sinalização de região, a API da instância em massa escolherá automaticamente a zona que tem capacidade para atender à solicitação.
Para saber mais sobre a criação em massa, consulte Sobre a criação em massa de VMs. Para saber mais sobre como criar VMs com GPUs anexadas, consulte Visão geral da criação de uma instância com GPUs anexadas.
Antes de começar
- Para analisar limitações e outras etapas de pré-requisito para criar instâncias com GPUs anexadas, como selecionar uma imagem do SO e verificar a cota de GPU, consulte Visão geral da criação de uma instância com GPUs anexadas.
- Para analisar as limitações da criação em massa, consulte Sobre a criação em massa de VMs.
-
Configure a autenticação, caso ainda não tenha feito isso.
A autenticação é
o processo de verificação da sua identidade para acesso a serviços e APIs do Google Cloud .
Para executar códigos ou amostras de um ambiente de desenvolvimento local, autentique-se no
Compute Engine selecionando uma das seguintes opções:
Select the tab for how you plan to use the samples on this page:
gcloud
-
Instale a CLI do Google Cloud. Após a instalação, inicialize a CLI do Google Cloud executando o seguinte comando:
gcloud init
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.
- Set a default region and zone.
REST
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para a CLI gcloud.
Instale a CLI do Google Cloud. Após a instalação, inicialize a CLI do Google Cloud executando o seguinte comando:
gcloud init
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.
Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud .
Funções exigidas
Para receber as permissões necessárias para criar VMs, peça ao administrador para conceder a você o papel do IAM de Administrador da instância da computação (v1) (
roles/compute.instanceAdmin.v1
) no projeto. Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.Esse papel predefinido contém as permissões necessárias para criar VMs. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As permissões a seguir são necessárias para criar VMs:
-
compute.instances.create
no projeto -
Usar uma imagem personalizada a fim de criar a VM:
compute.images.useReadOnly
na imagem -
Usar um snapshot para criar a VM:
compute.snapshots.useReadOnly
no snapshot -
Usar um modelo de instância para criar a VM:
compute.instanceTemplates.useReadOnly
no modelo de instância -
Atribuir uma rede legada à VM:
compute.networks.use
no projeto -
Especificar um endereço IP estático para a VM:
compute.addresses.use
no projeto -
Atribuir um endereço IP externo à VM ao usar uma rede legada:
compute.networks.useExternalIp
no projeto -
Especificar uma sub-rede para a VM:
compute.subnetworks.use
no projeto ou na sub-rede escolhida -
Atribuir um endereço IP externo à VM ao usar uma rede VPC:
compute.subnetworks.useExternalIp
no projeto ou na sub-rede escolhida -
Definir os metadados da instância de VM para a VM:
compute.instances.setMetadata
no projeto -
Definir tags para a VM:
compute.instances.setTags
na VM -
Definir rótulos para a VM:
compute.instances.setLabels
na VM -
Definir uma conta de serviço a ser usada pela VM:
compute.instances.setServiceAccount
na VM -
Criar um disco para a VM:
compute.disks.create
no projeto -
Anexar um disco atual no modo somente leitura ou de leitura e gravação:
compute.disks.use
no disco -
Anexar um disco atual no modo somente leitura:
compute.disks.useReadOnly
no disco
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Visão geral
Ao criar VMs com GPUs anexadas usando a API de instância em massa, é possível optar por criar VMs em uma região (como
us-central1
) ou em uma zona específica, como (us-central1-a
).Se você especificar uma região, o Compute Engine colocará as VMs em qualquer zona dentro da região compatível com GPUs.
Tipos de máquina
A família de máquinas otimizada para aceleradores contém vários tipos de máquinas.
Cada tipo de máquina com otimização de acelerador tem um modelo específico de GPUs NVIDIA anexado. Se você tiver cargas de trabalho com muitos gráficos, como a visualização em 3D, também poderá criar estações de trabalho virtuais que usam estações de trabalho virtuais (vWS) NVIDIA RTX. A estação de trabalho virtual NVIDIA RTX está disponível para alguns modelos de GPU.
Tipo de máquina Modelo de GPU Modelo de estação de trabalho virtual (vWS) NVIDIA RTX A4X Superchips NVIDIA GB200 Grace Blackwell ( nvidia-gb200
).Cada Superchip contém quatro GPUs NVIDIA B200 Blackwell.
A4 GPUs NVIDIA B200 Blackwell ( nvidia-b200
)A3 Ultra GPUs NVIDIA H200 SXM ( nvidia-h200-141gb
)A3 Mega GPUs NVIDIA H100 SXM ( nvidia-h100-mega-80gb
)A3 High, A3 Edge GPUs NVIDIA H100 SXM ( nvidia-h100-80gb
)A2 Ultra GPUs NVIDIA A100 de 80 GB ( nvidia-a100-80gb
)A2 Padrão GPUs NVIDIA A100 de 40 GB ( nvidia-a100-40gb
)G4 (Prévia) NVIDIA RTX PRO 6000 Blackwell Server Edition ( nvidia-rtx-pro-6000
)G2 GPUs NVIDIA L4 ( nvidia-l4
)GPUs NVIDIA L4 Virtual Workstation ( nvidia-l4-vws
)Criar grupos de VMs A3, A2 e G2
Nesta seção, explicamos como criar instâncias em massa para as séries de máquinas A3 High, A3 Mega, A3 Edge, A2 e G2 usando a Google Cloud CLI ou REST.
gcloud
Para criar um grupo de VMs, use o comando
gcloud compute instances bulk create
. Para mais informações sobre os parâmetros e como usar esse comando, consulte Criar VMs em massa.As seguintes sinalizações opcionais são mostradas no comando de exemplo:
O
--provisioning-model=SPOT
é uma flag opcional que configura suas VMs como VMs do Spot. Se a carga de trabalho for tolerante a falhas e resistente a possíveis preempções da VM, use as VMs spot para reduzir o custo das VMs e das GPUs anexadas. Para mais informações, consulte GPUs em VMs spot. Para VMs do Spot, as flags de opções de reinicialização automática e manutenção do host estão desativadas.A sinalização
--accelerator
para especificar uma estação de trabalho virtual. A NVIDIA RTX Virtual Workstations (vWS) é compatível apenas com VMs do G2.
Exemplo
Neste exemplo, criamos duas VMs que anexaram GPUs usando as seguintes especificações:
- nomes das VMs:
my-test-vm-1
,my-test-vm-2
- Cada VM tem duas GPUs anexadas, especificadas pelo tipo de máquina otimizador de otimização apropriado.
gcloud compute instances bulk create \ --name-pattern="my-test-vm-#" \ --region=REGION \ --count=2 \ --machine-type=MACHINE_TYPE \ --boot-disk-size=200 \ --image=IMAGE \ --image-project=IMAGE_PROJECT \ --on-host-maintenance=TERMINATE \ [--provisioning-model=SPOT] \ [--accelerator=type=nvidia-l4-vws,count=VWS_ACCELERATOR_COUNT]
Substitua:
REGION
: a região das VMs. Essa região precisa ser compatível com o modelo de GPU selecionado.MACHINE_TYPE
: o tipo de máquina selecionado. Escolha uma das seguintes opções:- Um tipo de máquina A3.
- Um tipo de máquina A2
- Um tipo de máquina G2 Os tipos de máquina G2 também oferecem suporte à memória personalizada. A memória precisa ser um múltiplo de 1.024 MB e estar dentro do intervalo de memória compatível. Por exemplo, para criar uma VM
com 4 vCPUs e 19 GB de memória, especifique
--machine-type=g2-custom-4-19456
.
IMAGE
: uma imagem de sistema operacional compatível com GPUs.Se você quiser usar a imagem mais recente em uma família de imagens, substitua a sinalização
--image
pela sinalização--image-family
e defina o valor dela como uma imagem família compatível com GPUs. Por exemplo:--image-family=rocky-linux-8-optimized-gcp
.Também é possível especificar uma imagem personalizada ou Deep Learning VM Images
IMAGE_PROJECT
: o projeto de imagem do Compute Engine a que a imagem do SO pertence. Se estiver usando uma imagem personalizada ou Deep Learning VM Images, especifique o projeto a que essas imagens pertencem.VWS_ACCELERATOR_COUNT
: o número necessário de GPUs virtuais.
Quando bem-sucedida, a saída será assim:
NAME ZONE my-test-vm-1 us-central1-b my-test-vm-2 us-central1-b Bulk create request finished with status message: [VM instances created: 2, failed: 0.]
REST
Use o método
instances.bulkInsert
com os parâmetros necessários para criar várias VMs em uma zona. Para mais informações sobre os parâmetros e como usar esse comando, consulte Criar VMs em massa.Exemplo
Neste exemplo, criamos duas VMs que anexaram GPUs usando as seguintes especificações:
- nomes das VMs:
my-test-vm-1
,my-test-vm-2
Cada VM tem duas GPUs anexadas, especificadas pelo tipo de máquina otimizador de otimização apropriado.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instances/bulkInsert { "namePattern":"my-test-vm-#", "count":"2", "instanceProperties": { "machineType":MACHINE_TYPE, "disks":[ { "type":"PERSISTENT", "initializeParams":{ "diskSizeGb":"200", "sourceImage":SOURCE_IMAGE_URI }, "boot":true } ], "name": "default", "networkInterfaces": [ { "network": "projects/PROJECT_ID/global/networks/default" } ], "scheduling":{ "onHostMaintenance":"TERMINATE", ["automaticRestart":true] } } }
Substitua:
PROJECT_ID
: ID do projetoREGION
: a região das VMs. Essa região precisa ser compatível com o modelo de GPU selecionado.MACHINE_TYPE
: o tipo de máquina selecionado. Escolha uma das seguintes opções:- Um tipo de máquina A2
- Um tipo de máquina G2 Os tipos de máquina G2 também oferecem suporte à memória personalizada. A memória precisa ser um múltiplo de 1.024 MB e estar dentro do intervalo de memória compatível. Por exemplo, para criar uma VM
com 4 vCPUs e 19 GB de memória, especifique
--machine-type=g2-custom-4-19456
.
SOURCE_IMAGE_URI
: o URI da imagem ou família de imagens específica que você quer usar.Por exemplo:
- Imagem específica:
"sourceImage": "projects/rocky-linux-cloud/global/images/rocky-linux-8-optimized-gcp-v20220719"
- Família de imagens:
"sourceImage": "projects/rocky-linux-cloud/global/images/family/rocky-linux-8-optimized-gcp"
.
Quando você especifica uma família de imagens, o Compute Engine cria uma VM a partir da imagem do SO mais recente e não obsoleta nessa família. Para mais informações sobre quando usar famílias de imagens, consulte Práticas recomendadas para famílias de imagens.
- Imagem específica:
Outras configurações:
Se a carga de trabalho for tolerante a falhas e resistente a possíveis preempções da VM, use as VMs spot para reduzir o custo das VMs e das GPUs anexadas. Para mais informações, consulte GPUs em VMs spot. Para usar uma VM spot, adicione a opção
"provisioningModel": "SPOT
à solicitação. Para VMs do Spot, as flags de opções de reinicialização automática e manutenção do host estão desativadas."scheduling": { "provisioningModel": "SPOT" }
Para VMs G2, a NVIDIA RTX Virtual Workstations (vWS) é compatível. Para especificar uma estação de trabalho virtual, adicione a opção
guestAccelerators
à sua solicitação. SubstituaVWS_ACCELERATOR_COUNT
pelo número de GPUs virtuais necessárias."guestAccelerators": [ { "acceleratorCount": VWS_ACCELERATOR_COUNT, "acceleratorType": "projects/PROJECT_ID/zones/ZONEacceleratorTypes/nvidia-l4-vws" } ]
Criar grupos de VMs de uso geral N1
Para criar um grupo de VMs com GPUs anexadas, use a CLI do Google Cloud ou REST.
Nesta seção, descrevemos como criar várias VMs usando os seguintes tipos de GPU:
GPUs NVIDIA:
- NVIDIA T4:
nvidia-tesla-t4
- NVIDIA P4:
nvidia-tesla-p4
- NVIDIA P100:
nvidia-tesla-p100
- NVIDIA V100:
nvidia-tesla-v100
NVIDIA RTX Virtual Workstation (vWS) (anteriormente conhecida como NVIDIA GRID):
- NVIDIA T4 Virtual Workstation:
nvidia-tesla-t4-vws
- NVIDIA P4 Virtual Workstation:
nvidia-tesla-p4-vws
NVIDIA P100 Virtual Workstation:
nvidia-tesla-p100-vws
Para essas estações de trabalho virtuais, uma licença da NVIDIA RTX Virtual Workstation (vWS) é adicionada automaticamente à instância.
gcloud
Para criar um grupo de VMs, use o comando
gcloud compute instances bulk create
. Para mais informações sobre os parâmetros e como usar esse comando, consulte Criar VMs em massa.Exemplo
O exemplo a seguir cria duas VMs com GPUs anexadas usando as seguintes especificações:
- nomes das VMs:
my-test-vm-1
,my-test-vm-2
- VMs criadas em qualquer zona em
us-central1
compatível com GPUs - Cada VM tem duas GPUs T4 anexadas, especificadas usando o tipo e as sinalizações de contagem de aceleradores
- Cada VM tem drivers de GPU instalados
- Cada VM usa a Deep Learning VM Image
pytorch-latest-gpu-v20211028-debian-10
.
gcloud compute instances bulk create \ --name-pattern="my-test-vm-#" \ --count=2 \ --region=us-central1 \ --machine-type=n1-standard-2 \ --accelerator type=nvidia-tesla-t4,count=2 \ --boot-disk-size=200 \ --metadata="install-nvidia-driver=True" \ --scopes="https://www.googleapis.com/auth/cloud-platform" \ --image=pytorch-latest-gpu-v20211028-debian-10 \ --image-project=deeplearning-platform-release \ --on-host-maintenance=TERMINATE --restart-on-failure
Quando bem-sucedida, a saída será assim:
NAME ZONE my-test-vm-1 us-central1-b my-test-vm-2 us-central1-b Bulk create request finished with status message: [VM instances created: 2, failed: 0.]
REST
Use o método
instances.bulkInsert
com os parâmetros necessários para criar várias VMs em uma zona. Para mais informações sobre os parâmetros e como usar esse comando, consulte Criar VMs em massa.Exemplo
O exemplo a seguir cria duas VMs com GPUs anexadas usando as seguintes especificações:
- nomes das VMs:
my-test-vm-1
,my-test-vm-2
- VMs criadas em qualquer zona em
us-central1
compatível com GPUs - Cada VM tem duas GPUs T4 anexadas, especificadas usando o tipo e as sinalizações de contagem de aceleradores
- Cada VM tem drivers de GPU instalados
- Cada VM usa a Deep Learning VM Image
pytorch-latest-gpu-v20211028-debian-10
.
Substitua
PROJECT_ID
pela ID do seu projeto.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/instances/bulkInsert { "namePattern":"my-test-vm-#", "count":"2", "instanceProperties": { "machineType":"n1-standard-2", "disks":[ { "type":"PERSISTENT", "initializeParams":{ "diskSizeGb":"200", "sourceImage":"projects/deeplearning-platform-release/global/images/pytorch-latest-gpu-v20211028-debian-10" }, "boot":true } ], "name": "default", "networkInterfaces": [ { "network": "projects/PROJECT_ID/global/networks/default" } ], "guestAccelerators": [ { "acceleratorCount": 2, "acceleratorType": "nvidia-tesla-t4" } ], "scheduling":{ "onHostMaintenance":"TERMINATE", "automaticRestart":true }, "metadata":{ "items":[ { "key":"install-nvidia-driver", "value":"True" } ] } } }
A seguir
Saiba como monitorar o desempenho da GPU.
Saiba como usar uma largura de banda de rede maior.
Saiba como processar eventos de manutenção do host da GPU.
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-08-19 UTC.
-