Neste documento, descrevemos as etapas para criar instâncias autônomas do Compute Engine que usam tipos de máquina otimizados para aceleradores A4X Max. Para saber mais sobre as opções de criação de instâncias de computação e clusters, consulte a página Visão geral das opções de implantação.
Tipo de instância A4X Max
Uma instância do Compute Engine, ou instância de computação, é um recurso de computação hospedado na infraestrutura do Google que pode ser uma máquina virtual (VM) ou uma instância bare metal. As instâncias A4X Max estão disponíveis como instâncias bare metal, que diferem das instâncias de VM por fornecer acesso direto e não virtualizado ao hardware físico subjacente. Para saber mais sobre o tipo de máquina A4X Max, consulte Série A4X Max na documentação do Compute Engine.
Limitações
Ao criar uma instância independente do A4X Max, as seguintes limitações se aplicam:
- Você não recebe descontos por uso prolongado nem descontos por compromisso de uso flexível para instâncias que usam esse tipo de máquina.
- Só é possível criar instâncias em determinadas regiões e zonas.
- Não é possível usar o Persistent Disk (regional ou zonal). Só é possível usar o Google Cloud Hyperdisk.
- Esse tipo de máquina só está disponível na plataforma NVIDIA Grace.
- As mudanças de tipo de máquina não são compatíveis com o A4X Max. Para alternar para ou desse tipo de máquina, crie uma nova instância.
- Não é possível executar sistemas operacionais Windows nesse tipo de máquina. Para uma lista de sistemas operacionais Linux compatíveis, consulte os sistemas operacionais compatíveis com instâncias de GPU.
- As instâncias A4X Max não oferecem suporte ao seguinte:
- Não é possível anexar discos do Hyperdisk ML criados antes de 4 de fevereiro de 2026 aos tipos de máquina A4X Max.
Antes de começar
Antes de criar instâncias do A4X Max, siga estas etapas, se ainda não tiver feito isso:
- Escolha uma opção de consumo: a opção escolhida determina como você recebe e usa os recursos de GPU.
Para saber mais, consulte Escolher uma opção de consumo.
- Obter capacidade: o processo para obter capacidade varia de acordo com cada opção de consumo.
Para saber mais sobre o processo de obtenção de capacidade para a opção de consumo escolhida, consulte Visão geral da capacidade.
Funções exigidas
Para receber as permissões necessárias para criar instâncias de computação,
peça ao administrador para conceder a você o
papel do IAM de Administrador da instância do Compute (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 instâncias de computação. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para criar instâncias de computação:
-
compute.instances.createno projeto -
Usar uma imagem personalizada para criar a VM:
compute.images.useReadOnlyna imagem -
Usar um snapshot para criar a VM:
compute.snapshots.useReadOnlyno snapshot -
Usar um modelo de instância para criar a VM:
compute.instanceTemplates.useReadOnlyno modelo de instância -
Especificar uma sub-rede para a VM:
compute.subnetworks.useno projeto ou na sub-rede escolhida -
Especificar um endereço IP estático para a VM:
compute.addresses.useno projeto -
Atribuir um endereço IP externo à VM ao usar uma rede VPC:
compute.subnetworks.useExternalIpno projeto ou na sub-rede escolhida -
Atribuir uma rede legada à VM:
compute.networks.useno projeto -
Atribuir um endereço IP externo à VM usando uma rede legada:
compute.networks.useExternalIpno projeto -
Definir os metadados da instância de VM para a VM:
compute.instances.setMetadatano projeto -
Definir tags para a VM:
compute.instances.setTagsna VM -
Definir rótulos para a VM:
compute.instances.setLabelsna VM -
Definir uma conta de serviço a ser usada pela VM:
compute.instances.setServiceAccountna VM -
Criar um disco para a VM:
compute.disks.createno projeto -
Anexar um disco atual no modo somente leitura ou de leitura e gravação:
compute.disks.useno disco -
Anexar um disco atual no modo somente leitura:
compute.disks.useReadOnlyno disco
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Fundamentos do A4X Max
Um cluster A4X Max é organizado em uma hierarquia de blocos e sub-blocos para facilitar o desempenho de rede não bloqueador em grande escala. Entender essa topologia é fundamental ao reservar capacidade e implantar cargas de trabalho.
- Instância A4X Max
- Uma instância A4X Max é um único tipo de máquina A4X Max com quatro GPUs anexadas.
- Sub-bloco
- Um sub-bloco é a unidade fundamental da capacidade do A4X Max. Para o A4X Max, um subbloco consiste em 18 instâncias A4X Max (72 GPUs). Essas instâncias formam um domínio NVLink e são conectadas usando um sistema NVLink de vários nós. Para criar um subbloco A4X Max, aplique uma
política de posicionamento compacto que especifique uma topologia
1x72. - Bloquear
- Um bloco A4X Max é composto de 25 sub-blocos (domínios NVLink), totalizando até 450 instâncias A4X Max (1.800 GPUs). Os sub-blocos são alinhados ao trilho para escalonamento eficiente. Cada sub-bloco requer uma política de posicionamento compacto. Portanto, para um único bloco A4X Max, é possível criar 25 políticas de posicionamento compacto.
A tabela a seguir mostra as opções de topologia compatíveis para instâncias A4X Max:
Topologia (gpuTopology) |
Número de GPUs | Número de instâncias |
|---|---|---|
1x72 |
72 | 18 |
Visão geral
A criação de uma instância com o tipo de máquina A4X Max inclui as seguintes etapas:
Criar redes VPC
Para configurar a rede para os tipos de máquina A4X Max, crie duas redes VPC para as seguintes interfaces de rede:
- Uma rede VPC regular com duas sub-redes para as interfaces de rede (NICs) do IDPF. Eles são usados para comunicação entre hosts.
- 1 rede VPC com o perfil de rede RoCE
para as NICs CX-8 ao criar vários subblocos
A4X Max. A rede VPC RoCE usa
uma única sub-rede chamada
default-subnet-1-RDMA_NAME_PREFIX-net, que é fornecida automaticamente, e todas as oito NICs CX-8 usam essa sub-rede. Essas NICs usam RDMA em Ethernet convergente (RoCE), fornecendo a comunicação de alta largura de banda e baixa latência essencial para escalonar para vários subblocos A4X Max. Para um único subbloco A4X Max, é possível pular essa rede VPC porque, em um único subbloco, a comunicação direta entre GPUs é processada pelo NVLink de vários nós.
Para mais informações sobre o arranjo de NICs, consulte Analisar a largura de banda da rede e o arranjo de NICs.
Crie as redes manualmente seguindo os guias de instruções ou automaticamente usando o script fornecido.
Guias de instruções
Crie as redes, suando as seguintes instruções:
- Para criar as redes VPC regulares para as gVNICs, consulte Criar e gerenciar redes de nuvem privada virtual.
- Para criar a rede VPC do RoCE, consulte Criar uma rede de nuvem privada virtual para NICs RDMA.
Para essas redes VPC, recomendamos definir a
unidade máxima de transmissão (MTU) para um valor maior.
Para os tipos de máquina A4X Max, o MTU recomendado é de 8896 bytes.
Para conferir as configurações de MTU recomendadas para outros tipos de máquina de GPU, consulte
Configurações de MTU para tipos de máquina de GPU.
Script
Crie as redes, seguindo estas etapas.
Para essas redes VPC, recomendamos definir a
unidade máxima de transmissão (MTU) para um valor maior.
Para os tipos de máquina A4X Max, o MTU recomendado é de 8896 bytes.
Para conferir as configurações de MTU recomendadas para outros tipos de máquina de GPU, consulte
Configurações de MTU para tipos de máquina de GPU.
Use o script a seguir para criar redes VPC regulares para as NICs do IDPF.
#!/bin/bash # Create regular VPC network for the IDPF NICs gcloud compute networks create IDPF_NETWORK_PREFIX-net \ --subnet-mode=custom \ --mtu=8896 \ --enable-ula-internal-ipv6 # Create subnets for the IDPF NICs for N in $(seq 0 1); do gcloud compute networks subnets create IDPF_NETWORK_PREFIX-$N \ --network=IDPF_NETWORK_PREFIX-net \ --region=REGION \ --stack-type=IPV6_ONLY \ --ipv6-access-type=INTERNAL done gcloud compute firewall-rules create IDPF_NETWORK_PREFIX-internal \ --network=IDPF_NETWORK_PREFIX-net \ --action=ALLOW \ --rules=tcp:0-65535,udp:0-65535,58 \ --source-ranges=IP_RANGESe você precisar de vários subblocos A4X Max, use o script a seguir para criar a rede VPC RoCE e as sub-redes para as quatro NICs CX-8 em cada instância A4X Max.
#!/bin/bash # List and make sure network profiles exist in the machine type's zone gcloud compute network-profiles list --filter "location.name=ZONE" # Create network for RDMA NICs gcloud compute networks create RDMA_NAME_PREFIX-net \ --network-profile=ZONE-vpc-roce-metal \ --subnet-mode custom \ --mtu=8896 # For RoCE VPC networks for bare metal instances, a single subnet named # default-subnet-1-RDMA_NAME_PREFIX-net is automatically provided. # For more details, see https://cloud.google.com/vpc/docs/rdma-network-profiles.Substitua:
IDPF_NETWORK_PREFIX: o prefixo de nome personalizado a ser usado para as redes e sub-redes VPC regulares das NICs IDPF.RDMA_NAME_PREFIX: o prefixo de nome personalizado a ser usado para a rede VPC e as sub-redes RoCE das NICs CX-8.ZONE: especifique uma zona em que o tipo de máquina que você quer usar esteja disponível, comous-central1-a. Para informações sobre regiões, consulte Disponibilidade de GPUs por regiões e zonas.REGION: a região em que você quer criar as sub-redes. Essa região precisa corresponder à zona especificada. Por exemplo, se a zona forus-central1-a, a região seráus-central1.IP_RANGE: o intervalo de IP a ser usado para as regras de firewall SSH.
- Opcional: para verificar se os recursos de rede VPC foram criados, confira as configurações de rede no console do Google Cloud :
- No console do Google Cloud , acesse a página Redes VPC.
- Pesquise na lista as redes que você criou na etapa anterior.
- Para conferir as sub-redes, regras de firewall e outras configurações de rede, clique no nome da rede.
Criar uma política de colocação de compactação
Para criar uma política de posicionamento compacto, selecione uma das seguintes opções:gcloud
Para criar uma política de posicionamento compacto, use o
comando gcloud beta compute resource-policies create group-placement:
gcloud beta compute resource-policies create group-placement POLICY_NAME \
--collocation=collocated \
--gpu-topology=1x72 \
--region=REGION
Substitua:
POLICY_NAME: o nome da política de posicionamento compacto.REGION: a região em que você quer criar a política de posicionamento compacto. Especifique uma região em que o tipo de máquina que você quer usar esteja disponível. Para informações sobre regiões, consulte Disponibilidade de GPUs por regiões e zonas.
REST
Para criar uma política de posicionamento compacto, faça uma solicitação POST para o
método resourcePolicies.insert
beta.
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/resourcePolicies
{
"name": "POLICY_NAME",
"groupPlacementPolicy": {
"collocation": "COLLOCATED",
"gpuTopology": "1x72"
}
}
Substitua:
PROJECT_ID: o ID do projeto.POLICY_NAME: o nome da política de posicionamento compacto.REGION: a região em que você quer criar a política de posicionamento compacto. Especifique uma região em que o tipo de máquina que você quer usar esteja disponível. Para informações sobre regiões, consulte Disponibilidade de GPUs por regiões e zonas.
Criar uma instância A4X Max
Para conseguir uma topologia de GPU de 1x72, crie 18 instâncias A4X Max. Ao criar as instâncias, aplique a política de posicionamento compacto que especifica o campo gpuTopology. A aplicação da política garante que o Compute Engine crie todas as 18 instâncias A4X Max em um subbloco para usar um domínio NVLink.
Se um sub-bloco não tiver capacidade para uma instância A4X Max, a solicitação para criar a
instância vai falhar.
Para criar uma instância do A4X Max, selecione uma das seguintes opções.
Os comandos a seguir também definem o escopo de acesso das suas instâncias. Para simplificar o gerenciamento de permissões, o Google recomenda definir o escopo de acesso de uma instância comocloud-platform e usar papéis do IAM para definir a quais serviços a instância pode acessar. Para mais informações, consulte
Práticas recomendadas de escopos.
gcloud
Para criar a instância A4X Max, use o
comando gcloud compute instances create.
gcloud compute instances create INSTANCE_NAME \
--machine-type=a4x-maxgpu-4g-metal \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--zone=ZONE \
--boot-disk-type=hyperdisk-balanced \
--boot-disk-size=DISK_SIZE \
--scopes=cloud-platform \
--network-interface=nic-type=IDPF,network=IDPF_NETWORK_PREFIX-net,stack-type=IPV6_ONLY,subnet=IDPF_NETWORK_PREFIX-sub-0 \
--network-interface=nic-type=IDPF,network=IDPF_NETWORK_PREFIX-net,stack-type=IPV6_ONLY,subnet=IDPF_NETWORK_PREFIX-sub-1,no-address \
--network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=MRDMA \
--network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=MRDMA \
--network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=MRDMA \
--network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=MRDMA \
--network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=MRDMA \
--network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=MRDMA \
--network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=MRDMA \
--network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=MRDMA \
--reservation-affinity=specific \
--reservation=RESERVATION \
--provisioning-model=RESERVATION_BOUND \
--instance-termination-action=TERMINATION_ACTION \
--maintenance-policy=TERMINATE \
--restart-on-failure \
--resource-policies=POLICY_NAME
Substitua:
INSTANCE_NAME: o nome da instância do A4X Max.IMAGE_FAMILY: a família de imagens da imagem do SO que você quer usar. Para uma lista de sistemas operacionais aceitos, consulte Detalhes do sistema operacional.IMAGE_PROJECT: o ID do projeto da imagem do SO.ZONE: a zona em que o tipo de máquina que você quer usar está disponível. É preciso usar uma zona na mesma região da política de posicionamento compacto. Para informações sobre regiões, consulte Disponibilidade de GPUs por regiões e zonas.DISK_SIZE: o tamanho do disco de inicialização em GB.IDPF_NETWORK_PREFIX: o prefixo de nome especificado ao criar as redes e sub-redes VPC que usam NICs IDPF.RDMA_NAME_PREFIX: o prefixo de nome especificado ao criar as redes e sub-redes da VPC que usam NICs RDMA.-
RESERVATION: o nome da reserva, um bloco ou um subbloco dentro de uma reserva. Para conferir o nome da reserva ou os blocos disponíveis, consulte Visualizar a capacidade reservada. Com base nos seus requisitos de posicionamento de instâncias, escolha uma das seguintes opções:- Para criar instâncias do A4X Max em um único bloco:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME - Para criar instâncias A4X Max em um bloco específico:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME - Para criar instâncias A4X Max em um subbloco específico:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME/reservationSubBlocks/RESERVATION_SUBBLOCK_NAME
- Para criar instâncias do A4X Max em um único bloco:
TERMINATION_ACTION: se o Compute Engine interrompe (STOP) ou exclui (DELETE) a instância A4X Max ao final do período de reserva.POLICY_NAME: o nome da política de posicionamento compacto.
REST
Para criar a instância A4X Max, faça uma solicitação POST para o
método
instances.insert.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
"machineType": "projects/PROJECT_ID/zones/ZONE/machineTypes/a4x-maxgpu-4g-metal",
"name": "INSTANCE_NAME",
"disks":[
{
"boot":true,
"initializeParams":{
"diskSizeGb": "DISK_SIZE",
"diskType": "hyperdisk-balanced",
"sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
},
"mode": "READ_WRITE",
"type": "PERSISTENT"
}
],
"serviceAccounts": [
{
"email": "default",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
}
],
"networkInterfaces": [
{
"accessConfigs": [
{
"name": "external-nat",
"type": "ONE_TO_ONE_NAT"
}
],
"network": "projects/NETWORK_PROJECT_ID/global/networks/IDPF_NETWORK_PREFIX-net",
"nicType": "IDPF",
"stackType": "IPV6_ONLY",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/IDPF_NETWORK_PREFIX-sub-0"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/IDPF_NETWORK_PREFIX-net",
"nicType": "IDPF",
"stackType": "IPV6_ONLY",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/IDPF_NETWORK_PREFIX-sub-1"
},
{
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
"nicType": "MRDMA",
"stackType": "IPV6_ONLY"
},
{
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
"nicType": "MRDMA",
"stackType": "IPV6_ONLY"
},
{
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
"nicType": "MRDMA",
"stackType": "IPV6_ONLY"
},
{
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
"nicType": "MRDMA",
"stackType": "IPV6_ONLY"
},
{
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
"nicType": "MRDMA",
"stackType": "IPV6_ONLY"
},
{
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
"nicType": "MRDMA",
"stackType": "IPV6_ONLY"
},
{
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
"nicType": "MRDMA",
"stackType": "IPV6_ONLY"
},
{
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
"nicType": "MRDMA",
"stackType": "IPV6_ONLY"
}
],
"reservationAffinity":{
"consumeReservationType": "SPECIFIC_RESERVATION",
"key": "compute.googleapis.com/reservation-name",
"values":[
"RESERVATION"
]
},
"scheduling":{
"provisioningModel": "RESERVATION_BOUND",
"instanceTerminationAction": "TERMINATION_ACTION",
"onHostMaintenance": "TERMINATE",
"automaticRestart": true
},
"resourcePolicies": [
"projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME"
]
}
Substitua:
PROJECT_ID: o ID do projeto em que você quer criar a instância A4X Max.ZONE: a zona em que o tipo de máquina que você quer usar está disponível. É preciso usar uma zona na mesma região da política de posicionamento compacto. Para informações sobre regiões, consulte Disponibilidade de GPUs por regiões e zonas.INSTANCE_NAME: o nome da instância do A4X Max.DISK_SIZE: o tamanho do disco de inicialização em GB.IMAGE_PROJECT: o ID do projeto da imagem do SO.IMAGE_FAMILY: a família de imagens da imagem do SO que você quer usar. Para uma lista de sistemas operacionais aceitos, consulte Detalhes do sistema operacional.NETWORK_PROJECT_ID: o ID do projeto da rede.IDPF_NETWORK_PREFIX: o prefixo de nome especificado ao criar as redes e sub-redes VPC que usam NICs IDPF.REGION: a região da sub-rede.RDMA_NAME_PREFIX: o prefixo de nome especificado ao criar as redes e sub-redes da VPC que usam NICs RDMA.-
RESERVATION: o nome da reserva, um bloco ou um subbloco dentro de uma reserva. Para conferir o nome da reserva ou os blocos disponíveis, consulte Visualizar a capacidade reservada. Com base nos seus requisitos de posicionamento de instâncias, escolha uma das seguintes opções:- Para criar instâncias do A4X Max em um único bloco:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME - Para criar instâncias A4X Max em um bloco específico:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME - Para criar instâncias A4X Max em um subbloco específico:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME/reservationSubBlocks/RESERVATION_SUBBLOCK_NAME
- Para criar instâncias do A4X Max em um único bloco:
TERMINATION_ACTION: se o Compute Engine interrompe (STOP) ou exclui (DELETE) a instância A4X Max ao final do período de reserva.PROJECT_ID: o ID do projeto da política de posicionamento compacto.REGION: a região da política de posicionamento compacto.POLICY_NAME: o nome da política de posicionamento compacto.
A seguir
- Conferir a topologia das VMs
- Visão geral da execução de cargas de trabalho
- Resolver problemas de consumo de reserva