Questo documento descrive come creare istanze con GPU collegate della serie di macchine A3 Ultra o A4. Per scoprire di più sulla creazione di istanze con GPU collegate, consulta la Panoramica della creazione di un'istanza con GPU collegate.
Prima di iniziare
- Per esaminare le limitazioni e i passaggi di prerequisito aggiuntivi per la creazione di istanze con GPU collegate, ad esempio la selezione di un'immagine del sistema operativo e il controllo della quota GPU, consulta la Panoramica della creazione di un'istanza con GPU collegate.
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è il processo mediante il quale la tua identità viene verificata per l'accesso a servizi e API. Google Cloud
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
- Set a default region and zone.
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
- Set a default region and zone.
-
compute.instances.create
sul progetto -
Per utilizzare un'immagine personalizzata per creare la VM:
compute.images.useReadOnly
sull'immagine -
Per utilizzare uno snapshot per creare la VM:
compute.snapshots.useReadOnly
sullo snapshot -
Per utilizzare un modello di istanza per creare la VM:
compute.instanceTemplates.useReadOnly
nel modello di istanza -
Per assegnare una rete legacy alla VM:
compute.networks.use
nel progetto -
Per specificare un indirizzo IP statico per la VM:
compute.addresses.use
nel progetto -
Per assegnare un indirizzo IP esterno alla VM quando utilizzi una rete legacy:
compute.networks.useExternalIp
nel progetto -
Per specificare una subnet per la VM:
compute.subnetworks.use
nel progetto o nella subnet scelta -
Per assegnare un indirizzo IP esterno alla VM quando utilizzi una rete VPC:
compute.subnetworks.useExternalIp
nel progetto o nella subnet scelta -
Per impostare i metadati dell'istanza VM per la VM:
compute.instances.setMetadata
nel progetto -
Per impostare i tag per la VM:
compute.instances.setTags
sulla VM -
Per impostare le etichette per la VM:
compute.instances.setLabels
sulla VM -
Per impostare un account di servizio da utilizzare per la VM:
compute.instances.setServiceAccount
sulla VM -
Per creare un nuovo disco per la VM:
compute.disks.create
nel progetto -
Per collegare un disco esistente in modalità di sola lettura o di lettura e scrittura:
compute.disks.use
sul disco -
Per collegare un disco esistente in modalità di sola lettura:
compute.disks.useReadOnly
sul disco Se esegui carichi di lavoro di IA e ML di lunga durata, come l'addestramento e l'inferenza di modelli di grandi dimensioni che richiedono la latenza più bassa, ti consigliamo di utilizzare Hypercompute Cluster (anteprima). Con Hypercompute Cluster, puoi prenotare macchine con allocazione elevata che forniscono pianificazione basata sulla topologia e monitoraggio e manutenzione avanzati di questa capacità riservata. Per scoprire di più su Hypercompute Cluster, consulta Hypercompute Cluster nella documentazione di AI Hypercomputer.
Per istruzioni su come creare istanze A3 Ultra o A4 utilizzando Hypercompute Cluster, consulta la Panoramica della creazione di VM e cluster nella documentazione di AI Hypercomputer.
Se esegui carichi di lavoro di IA e ML di priorità inferiore che sono tolleranti alle interruzioni della disponibilità, puoi ottenere sconti significativi utilizzando le VM Spot. Sebbene tu possa creare ed eliminare le VM spot in base alle tue esigenze, queste sono risorse limitate che potrebbero non essere sempre disponibili e Compute Engine potrebbe prerilasciare (interrompere o eliminare automaticamente) le VM spot in qualsiasi momento. Per scoprire di più sulle VM spot, consulta VM spot.
Per istruzioni su come creare istanze A3 Ultra o A4 utilizzando le VM spot, consulta la sezione Creare un'istanza A3 Ultra o A4 utilizzando le VM spot di questo documento.
- 2 interfacce di rete gVNIC utilizzate per la comunicazione da host a host
- 1 interfaccia di rete RDMA (collegata a una rete con 8 subnet) per la comunicazione tra GPU
- 2 interfacce di rete gVNIC utilizzate per la comunicazione da host a host.
- 1 interfaccia di rete RDMA (collegata a una rete con 8 subnet) per la comunicazione tra GPU.
- Per creare le reti host, consulta Creare e gestire le reti Virtual Private Cloud.
- Per creare le reti GPU, consulta Creare una rete Virtual Private Cloud per le NIC RDMA.
GVNIC_NAME_PREFIX
: il prefisso del nome da utilizzare per le reti VPC e le subnet standard che utilizzano NIC gVNIC.RDMA_NAME_PREFIX
: il prefisso del nome da utilizzare per le reti e le subnet VPC che utilizzano NIC RDMA.ZONE
: specifica una zona in cui è disponibile il tipo di macchina che vuoi utilizzare. Per informazioni sulle regioni, consulta Regioni e zone GPU.REGION
: la regione in cui vuoi creare le reti. Deve corrispondere alla zona specificata. Ad esempio, se la tua zona èeurope-west1-b
, la tua regione èeurope-west1
.IP_RANGE
: l'intervallo IP da utilizzare per le regole del firewall SSH.Nella console Google Cloud, vai alla pagina Crea un'istanza.
Viene visualizzata la schermata Crea un'istanza, che mostra il riquadro Configurazione macchina.
Nel riquadro Configurazione macchina, completa i seguenti passaggi:
- Specifica un nome per l'istanza. Consulta Convenzione di denominazione delle risorse.
- Seleziona la Regione e la Zona in cui vuoi prenotare la capacità. Consulta l'elenco delle regioni e delle zone GPU disponibili.
- Fai clic sulla scheda GPU e completa i seguenti passaggi:
- Nell'elenco Tipo di GPU, seleziona il tipo di GPU.
- Per le istanze A4, seleziona
NVIDIA B200
- Per le istanze A3 Ultra, seleziona
NVIDIA H200 141GB
- Per le istanze A4, seleziona
- Nell'elenco Numero di GPU, seleziona
8
.
- Nell'elenco Tipo di GPU, seleziona il tipo di GPU.
Nel menu di navigazione, fai clic su Sistema operativo e spazio di archiviazione. Nel riquadro OS e archiviazione visualizzato, completa i seguenti passaggi:
- Fai clic su Cambia. Viene visualizzato il riquadro Configurazione del disco di avvio.
- Nella scheda Immagini pubbliche, seleziona un'immagine consigliata. Per un elenco delle immagini consigliate, consulta Sistemi operativi.
- Per confermare le opzioni del disco di avvio, fai clic su Seleziona.
Per creare un'istanza con più NIC, completa i seguenti passaggi. In caso contrario, per creare un'istanza con una sola NIC, salta questi passaggi.
Nel menu di navigazione, fai clic su Networking. Nel riquadro Networking visualizzato, completa i seguenti passaggi:
Nella sezione Interfacce di rete, completa i seguenti passaggi:
Elimina l'interfaccia di rete predefinita. Per eliminare l'interfaccia, fai clic su
Elimina.Fai clic su Aggiungi un'interfaccia di rete. Utilizza questa opzione per aggiungere le reti gVNIC e RDMA che hai creato nella sezione precedente. Quando aggiungi le emittenti, ricorda quanto segue:
- Specifica le reti host negli elenchi Rete e Subnet e imposta l'elenco Scheda di interfaccia di rete su gVNIC.
- Specifica le reti GPU negli elenchi Rete e Sottorete e imposta l'elenco Scheda di interfaccia di rete su MRDMA per queste reti.
Nel menu di navigazione, fai clic su Avanzate. Nel riquadro Avanzate visualizzato, completa i seguenti passaggi:
Nella sezione Modello di provisioning, seleziona Spot nell'elenco Modello di provisioning delle VM.
(Facoltativo) Per specificare l'azione da eseguire quando Compute Engine preleva l'istanza (arresto (predefinito) o eliminazione), completa i seguenti passaggi:
- Espandi la sezione Impostazioni avanzate del modello di provisioning delle VM.
- Nell'elenco Al termine della VM, seleziona un'opzione.
Per creare e avviare l'istanza, fai clic su Crea.
INSTANCE_NAME
: il nome dell'istanza.MACHINE_TYPE
: il tipo di macchina da utilizzare per l'istanza,a3-ultragpu-8g
oa4-highgpu-8g
.IMAGE_FAMILY
: la famiglia di immagini dell'immagine del sistema operativo che vuoi utilizzare. Per le opzioni, vedi Dettagli sul sistema operativo.IMAGE_PROJECT
: l'ID progetto dell'immagine del sistema operativo.TERMINATION_ACTION
: facoltativo. Specifica l'azione da intraprendere quando Compute Engine esegue la preemption dell'istanza,STOP
(comportamento predefinito) oDELETE
.ZONE
: la zona in cui vuoi creare l'istanza. Per le opzioni, consulta Regioni e zone GPU.DISK_SIZE
: le dimensioni del disco di avvio in GB.PROJECT_ID
: l'ID del progetto in cui vuoi creare l'istanza.ZONE
: la zona in cui vuoi creare l'istanza. Per le opzioni, consulta Regioni e zone GPU.MACHINE_TYPE
: il tipo di macchina da utilizzare per l'istanza,a3-ultragpu-8g
oa4-highgpu-8g
.INSTANCE_NAME
: il nome dell'istanza.DISK_SIZE
: le dimensioni del disco di avvio in GB.IMAGE_PROJECT
: l'ID progetto dell'immagine del sistema operativo.IMAGE_FAMILY
: la famiglia di immagini dell'immagine del sistema operativo che vuoi utilizzare. Per le opzioni, vedi Dettagli sul sistema operativo.TERMINATION_ACTION
: facoltativo. Specifica l'azione da intraprendere quando Compute Engine esegue la preemption dell'istanza,STOP
(comportamento predefinito) oDELETE
.- Per consentire a un'istanza di utilizzare le GPU collegate, sono necessari i driver GPU. A meno che tu non abbia specificato un'immagine che includa già i driver GPU richiesti, segui la procedura per installare i driver GPU.
- Per preparare una VM spot per l'utilizzo, completa i seguenti passaggi:
- Per scoprire come assicurarti che una VM spot possa resistere alla preemption, consulta Gestire la preemption delle VM spot.
- (Facoltativo) Scopri le best practice per l'utilizzo delle VM spot.
- Per monitorare le prestazioni della GPU, consulta Monitorare le prestazioni della GPU.
- Per risolvere i problemi relativi alle istanze GPU, vedi Risolvere i problemi delle VM GPU.
- Scopri di più sulle piattaforme GPU.
REST
Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Per ulteriori informazioni, consulta Eseguire l'autenticazione per l'utilizzo di REST nella documentazione Google Cloud sull'autenticazione.
Prima di iniziare
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
REST
Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Per ulteriori informazioni, consulta Eseguire l'autenticazione per l'utilizzo di REST nella documentazione Google Cloud sull'autenticazione.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per creare istanze, chiedi all'amministratore di concederti il ruolo IAM Amministratore istanze Compute (v1) (
roles/compute.instanceAdmin.v1
) nel progetto. Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.Questo ruolo predefinito contiene le autorizzazioni necessarie per creare istanze. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
Per creare istanze sono necessarie le seguenti autorizzazioni:
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Crea un'istanza A3 Ultra o A4
Le istanze A3 Ultra o A4 sono disponibili tramite le seguenti opzioni di creazione, ciascuna con procedure di creazione, disponibilità delle risorse e prezzi diversi. Identifica l'opzione che vuoi utilizzare in base al tuo carico di lavoro.
Creare un'istanza A3 Ultra o A4 utilizzando le VM spot
Per creare un'istanza A3 Ultra o A4 utilizzando le VM spot, completa i passaggi nelle sezioni seguenti:
Crea reti VPC
In base al tipo di macchina che vuoi utilizzare e al numero di interfacce di rete nel tipo di macchina, devi creare reti Virtual Private Cloud (VPC) come segue:
Tipo di macchina Numero di NIC fisiche* Interfacce di rete† Numero di reti VPC da creare a4-highgpu-8g
10 3 a3-ultragpu-8g
10 3 * Per ulteriori informazioni sull'organizzazione delle NIC, consulta Esaminare la larghezza di banda di rete e l'organizzazione delle NIC.†Per ulteriori informazioni sulle interfacce di rete, consulta Utilizzare la NIC virtuale di Google e Profili di rete RDMA.Configura le emittenti manualmente seguendo le guide alle istruzioni o automaticamente utilizzando lo script fornito.
Guide di istruzioni
Per creare le reti, puoi utilizzare le seguenti istruzioni:
Script
Per creare le reti, puoi utilizzare il seguente script.
#!/bin/bash # Create standard VPCs (network and subnets) for the gVNICs for N in $(seq 0 1); do gcloud beta compute networks create GVNIC_NAME_PREFIX-net-$N \ --subnet-mode=custom gcloud beta compute networks subnets create GVNIC_NAME_PREFIX-sub-$N \ --network=GVNIC_NAME_PREFIX-net-$N \ --region=REGION \ --range=10.$N.0.0/16 gcloud beta compute firewall-rules create GVNIC_NAME_PREFIX-internal-$N \ --network=GVNIC_NAME_PREFIX-net-$N \ --action=ALLOW \ --rules=tcp:0-65535,udp:0-65535,icmp \ --source-ranges=10.0.0.0/8 done # Create SSH firewall rules gcloud beta compute firewall-rules create GVNIC_NAME_PREFIX-ssh \ --network=GVNIC_NAME_PREFIX-net-0 \ --action=ALLOW \ --rules=tcp:22 \ --source-ranges=IP_RANGE # Assumes that an external IP is only created for vNIC 0 gcloud beta compute firewall-rules create GVNIC_NAME_PREFIX-allow-ping-net-0 \ --network=GVNIC_NAME_PREFIX-net-0 \ --action=ALLOW \ --rules=icmp \ --source-ranges=IP_RANGE # List and make sure network profiles exist gcloud beta compute network-profiles list # Create network for CX-7 gcloud beta compute networks create RDMA_NAME_PREFIX-mrdma \ --network-profile=ZONE-vpc-roce \ --subnet-mode custom # Create subnets. for N in $(seq 0 7); do gcloud beta compute networks subnets create RDMA_NAME_PREFIX-mrdma-sub-$N \ --network=RDMA_NAME_PREFIX-mrdma \ --region=REGION \ --range=10.$((N+2)).0.0/16 # offset to avoid overlap with gVNICs done
Sostituisci quanto segue:
Crea la VM Spot
Per creare la VM spot, utilizza uno dei seguenti metodi:
Console
gcloud
Per creare l'istanza, utilizza il comando
gcloud beta compute instances create
:gcloud beta compute instance create INSTANCE_NAME \ --machine-type=MACHINE_TYPE \ --image-family=IMAGE_FAMILY \ --image-project=IMAGE_PROJECT \ --provisioning-model=SPOT \ --instance-termination-action=TERMINATION_ACTION \ --zone=ZONE \ --boot-disk-type=hyperdisk-balanced \ --boot-disk-size=DISK_SIZE \ --scopes=cloud-platform \ --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-0,subnet=GVNIC_NAME_PREFIX-sub-0 \ --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-1,subnet=GVNIC_NAME_PREFIX-sub-1,no-address \ --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-0,no-address \ --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-1,no-address \ --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-2,no-address \ --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-3,no-address \ --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-4,no-address \ --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-5,no-address \ --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-6,no-address \ --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-7,no-address
Sostituisci quanto segue:
REST
Per creare l'istanza, invia una richiesta
POST
al metodoinstances.insert
come segue:POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/ { { "machineType":"projects/PROJECT_ID/zones/ZONE/machineTypes/MACHINE_TYPE", "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" } ], "networkInterfaces": [ { "accessConfigs": [ { "name": "external-nat", "type": "ONE_TO_ONE_NAT" } ], "network": "projects/PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-0", "nicType": "GVNIC", "subnetwork": "projects/PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-0" }, { "network": "projects/PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-1", "nicType": "GVNIC", "subnetwork": "projects/PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-1" }, { "network": "projects/PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma", "nicType": "MRDMA", "subnetwork": "projects/PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-0" }, { "network": "projects/PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma", "nicType": "MRDMA", "subnetwork": "projects/PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-1" }, { "network": "projects/PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma", "nicType": "MRDMA", "subnetwork": "projects/PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-2" }, { "network": "projects/PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma", "nicType": "MRDMA", "subnetwork": "projects/PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-3" }, { "network": "projects/PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma", "nicType": "MRDMA", "subnetwork": "projects/PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-4" }, { "network": "projects/PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma", "nicType": "MRDMA", "subnetwork": "projects/PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-5" }, { "network": "projects/PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma", "nicType": "MRDMA", "subnetwork": "projects/PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-6" }, { "network": "projects/PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma", "nicType": "MRDMA", "subnetwork": "projects/PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-7" } ], "scheduling":{ "provisioningModel":"SPOT", "instanceTerminationAction":"TERMINATION_ACTION" } } }
Sostituisci quanto segue:
Preparare una VM spot con GPU collegate per l'utilizzo
Per preparare una VM Spot con GPU collegate per l'utilizzo, completa i seguenti passaggi:
Passaggi successivi
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2025-03-27 UTC.
-