Prima di iniziare
- Per rivedere i passaggi dei prerequisiti aggiuntivi, come la selezione di un'immagine del sistema operativo e controllare la quota GPU, esaminare documento di panoramica.
-
Se non l'hai già fatto, configura l'autenticazione.
Autenticazione è
la procedura di verifica dell'identità per l'accesso ai servizi e alle API di Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi eseguire l'autenticazione
Compute Engine come segue.
Select the tab for how you plan to use the samples on this page:
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
-
compute.instances.create
del 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
sul modello di istanza -
Per assegnare una rete legacy alla VM:
compute.networks.use
del progetto -
Per specificare un indirizzo IP statico per la VM:
compute.addresses.use
del progetto -
Per assegnare un indirizzo IP esterno alla VM quando utilizzi una rete legacy:
compute.networks.useExternalIp
del progetto -
Per specificare una subnet per la tua VM:
compute.subnetworks.use
del progetto o della subnet scelta -
Per assegnare un indirizzo IP esterno alla VM quando utilizzi una rete VPC:
compute.subnetworks.useExternalIp
del progetto o della subnet scelta -
Per impostare i metadati di un'istanza VM per la VM:
compute.instances.setMetadata
del 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
del progetto -
Per collegare un disco esistente in modalità di sola lettura o lettura/scrittura:
compute.disks.use
sul disco -
Per collegare un disco esistente in modalità di sola lettura:
compute.disks.useReadOnly
sul disco - Per i tipi di macchine ottimizzati per l'acceleratore A3:
Sono collegate GPU NVIDIA H100 da 80 GB. Sono disponibili nelle seguenti opzioni:
- A3 High (
a3-highgpu-8g
): questo tipo di macchina ha GPU H100 da 80 GB allegato - A3 Mega (
a3-megagpu-8g
): questo tipo di macchina ha GPU H100 da 80 GB Mega allegato
- A3 High (
- Per i tipi di macchine ottimizzati per l'acceleratore A2:
Sono collegate GPU NVIDIA A100. Sono disponibili nelle seguenti opzioni:
- A2 Standard (
a2-highgpu-*
,a2-megagpu-*
): questi tipi di macchine hanno GPU A100 da 40 GB collegate - A2 Ultra (
a2-ultragpu-*
): questi tipi di macchina hanno GPU A100 da 80 GB allegato
- A2 Standard (
- Per tipi di macchine ottimizzate per l'acceleratore G2
(
g2-standard-*
), sono collegate GPU NVIDIA L4. Il flag
--preemptible
che configura la tua VM come di un'istanza VM prerilasciabile. Questo riduce il costo della VM con GPU collegate. Per ulteriori informazioni, vedi GPU su istanze prerilasciabiliIl flag
--accelerator
per specificare una workstation virtuale. Le workstation virtuali (vWS) NVIDIA RTX sono supportate solo per le VM G2.- Nomi VM:
my-test-vm-1
,my-test-vm-2
- A ogni VM sono collegate due GPU, specificate l'appropriata tipo di macchina ottimizzato per l'acceleratore
REGION
: la regione delle VM. Questa regione deve assistenza il modello GPU selezionato.MACHINE_TYPE
: il tipo di macchina che hai selezionato. Scegli una delle seguenti opzioni:- Un tipo di macchina A3.
- Un tipo di macchina A2.
- Un tipo di macchina G2. Anche i tipi di macchine G2
supportano la memoria personalizzata. La memoria deve essere un multiplo di 1024 MB
nell'intervallo di memoria supportato. Ad esempio, per creare una VM
con 4 vCPU e 19 GB di memoria specificare
--machine-type=g2-custom-4-19456
.
IMAGE
: un'immagine di un sistema operativo che supporta le GPU.Se vuoi usare l'ultima immagine in un Famiglia di immagini, sostituisci Flag
--image
con il flag--image-family
impostato il suo valore per una famiglia di immagini che supporta le GPU. Ad esempio:--image-family=rocky-linux-8-optimized-gcp
.Puoi anche specificare un'immagine personalizzata o Deep Learning VM Image.
IMAGE_PROJECT
: il valore Progetto immagine di Compute Engine a cui appartiene l'immagine sistema operativo. Se utilizzi un'immagine personalizzata Deep Learning VM Images, specifica il progetto a cui appartengono le immagini.VWS_ACCELERATOR_COUNT
: il numero di GPU virtuali di cui hai bisogno.- Nomi VM:
my-test-vm-1
,my-test-vm-2
A ogni VM sono collegate due GPU, specificate l'appropriata tipo di macchina ottimizzato per l'acceleratore
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 } } }
PROJECT_ID
: il tuo ID progettoREGION
: la regione delle VM. Questa regione deve assistenza il modello GPU selezionato.MACHINE_TYPE
: il tipo di macchina che hai selezionato. Scegli una delle seguenti opzioni:- Un tipo di macchina A2.
- Un tipo di macchina G2. Anche i tipi di macchine G2
supportano la memoria personalizzata. La memoria deve essere un multiplo di 1024 MB
nell'intervallo di memoria supportato. Ad esempio, per creare una VM
con 4 vCPU e 19 GB di memoria specificare
--machine-type=g2-custom-4-19456
.
SOURCE_IMAGE_URI
: l'URI della specifica immagine o famiglia di immagini che vuoi utilizzare.Ad esempio:
- Immagine specifica:
"sourceImage": "projects/rocky-linux-cloud/global/images/rocky-linux-8-optimized-gcp-v20220719"
- Famiglia di immagini:
"sourceImage": "projects/rocky-linux-cloud/global/images/family/rocky-linux-8-optimized-gcp"
.
Quando specifichi una famiglia di immagini, Compute Engine crea una VM dall'immagine sistema operativo non deprecata più recente di quella famiglia. Per per ulteriori informazioni su quando utilizzare le famiglie di immagini, consulta Best practice per la famiglia di immagini.
- Immagine specifica:
Puoi ridurre il costo della VM e delle GPU collegate utilizzando delle VM prerilasciabili. Per ulteriori informazioni, vedi GPU su VM prerilasciabile prerilasciabili Per impostare la VM come prerilasciabile, aggiungi l'opzione
"preemptible": true
a la tua richiesta."scheduling": { "onHostMaintenance": "terminate", "automaticRestart": true, "preemptible": true }
Per le VM G2, sono supportate le workstation virtuali NVIDIA RTX (vWS). A una workstation virtuale, aggiungi l'opzione
guestAccelerators
al tuo richiesta. SostituisciVWS_ACCELERATOR_COUNT
con il numero di le GPU virtuali di cui hai bisogno."guestAccelerators": [ { "acceleratorCount": VWS_ACCELERATOR_COUNT, "acceleratorType": "projects/PROJECT_ID/zones/ZONEacceleratorTypes/nvidia-l4-vws" } ]
- Non ricevi sostenibilità per l'utilizzo degli sconti e per impegno di utilizzo flessibile per le VM che usano tipi di macchine A3.
- Puoi utilizzare i tipi di macchine A3 solo in determinate regioni e zone.
- Non puoi utilizzare le opzioni regionali dischi permanenti sulle VM che utilizzano tipi di macchine A3.
- Il tipo di macchina A3 è disponibile solo sulla piattaforma Sapphire Rapids.
- Se la tua VM utilizza un tipo di macchina A3, non puoi cambiare il tipo di macchina. Se devi modificare il tipo di macchina, devi creare una nuova VM.
- Non puoi cambiare il tipo di macchina di una VM in un tipo di macchina A3. Se hai bisogno a una VM che utilizza un tipo di macchina A3, devi crearne una nuova.
- I tipi di macchina A3 non supportano la single-tenancy.
- Non puoi eseguire i sistemi operativi Windows sui tipi di macchina A3.
- Puoi prenotare tipi di macchine A3 solo tramite prenotazioni di Google.
- Non ricevi sostenibilità per l'utilizzo degli sconti e per impegno di utilizzo flessibile per le VM che utilizzano tipi di macchine A2 Standard.
- Puoi utilizzare i tipi di macchina A2 Standard solo in determinate regioni e zone.
- Non puoi utilizzare le opzioni regionali dischi permanenti sulle VM che utilizzano tipi di macchine standard A2.
- Il tipo di macchina A2 Standard è disponibile solo sulla piattaforma Cascade Lake.
- Se la tua VM utilizza un tipo di macchina A2 Standard, puoi passare solo da una macchina A2 Standard a un altro tipo di macchina A2 Standard. Non puoi passare a qualsiasi altro tipo di macchina. Per ulteriori informazioni, vedi Modifica le VM ottimizzate per l'acceleratore.
- Non puoi utilizzare il sistema operativo Windows con <codea2-megagpu-16g< code="" dir="ltr" translate="no"> Tipi di macchina standard A2. Se utilizzi sistemi operativi Windows, scegli un tipo di macchina A2 Standard diverso.</codea2-megagpu-16g<>
- Non puoi eseguire una formattazione rapida degli SSD locali collegati su VM Windows che utilizzano A2 Standard
tipi di macchine virtuali. Per formattare questi SSD locali, devi eseguire un formato completo utilizzando l'attributo diskpart
utilità e specifica
format fs=ntfs label=tmpfs
. - I tipi di macchina A2 standard non supportano la single-tenancy.
- Non ricevi sostenibilità per l'utilizzo degli sconti e per impegno di utilizzo flessibile per le VM che utilizzano tipi di macchine A2 Ultra.
- Puoi utilizzare i tipi di macchine A2 Ultra solo in determinate regioni e zone.
- Non puoi utilizzare le opzioni regionali dischi permanenti sulle VM che utilizzano tipi di macchine A2 Ultra.
- Il tipo di macchina A2 Ultra è disponibile solo sulla piattaforma Cascade Lake.
- Se la tua VM utilizza un tipo di macchina A2 Ultra, non puoi cambiare il tipo di macchina. Se devi utilizzare un tipo di macchina A2 Ultra diverso o qualsiasi altro tipo di macchina, devi creare un una nuova VM.
- Non puoi cambiare nessun altro tipo di macchina in un tipo di macchina A2 Ultra. Se hai bisogno VM che utilizza un tipo di macchina A2 Ultra, devi crearne una nuova.
- Non è possibile formattare rapidamente gli SSD locali collegati su VM Windows che utilizzano A2 Ultra
tipi di macchine virtuali. Per formattare questi SSD locali, devi eseguire un formato completo utilizzando l'attributo diskpart
utilità e specifica
format fs=ntfs label=tmpfs
. - Non ricevi sostenibilità per l'utilizzo degli sconti e per impegno di utilizzo flessibile per le VM che utilizzano i tipi di macchine G2.
- Puoi utilizzare i tipi di macchine G2 solo in determinate regioni e zone.
- Non puoi utilizzare le opzioni regionali dischi permanenti sulle VM che utilizzano tipi di macchine G2.
- Il tipo di macchina G2 è disponibile solo sulla piattaforma Cascade Lake.
- I dischi permanenti standard (
pd-standard
) non sono supportati sulle VM che utilizzano G2 i tipi di macchine standard. Per i tipi di disco supportati, consulta Tipi di disco supportati per G2. - Non puoi creare istanze multi-istanza GPU sui tipi di macchine G2.
- Se devi modificare il tipo di macchina di una VM G2, rivedi Modifica le VM ottimizzate per l'acceleratore.
- Non puoi utilizzare Deep Learning VM Images come dischi di avvio per le VM che usano i tipi di macchine G2.
- L'attuale driver predefinito per Container-Optimized OS non supporta le GPU L4 in esecuzione su
tipi di macchine G2. Container-Optimized OS supporta inoltre solo un insieme selezionato di driver.
Se vuoi utilizzare Container-Optimized OS sui tipi di macchine G2, rivedi le note seguenti:
- Utilizza una versione di Container-Optimized OS che supporti il numero minimo consigliato
Versione driver NVIDIA
525.60.13
o successiva. Per ulteriori informazioni, consulta Note di rilascio di Container-Optimized OS. - Quando installi il driver,
specifica la versione più recente disponibile che funziona per le GPU L4.
Ad esempio,
sudo cos-extensions install gpu -- -version=525.60.13
.
- Utilizza una versione di Container-Optimized OS che supporti il numero minimo consigliato
Versione driver NVIDIA
- Devi utilizzare Google Cloud CLI o REST
crea VM G2
per i seguenti scenari:
- Vuoi specificare valori di memoria personalizzati.
- Vuoi personalizzare il numero di core CPU visibili.
- NVIDIA T4:
nvidia-tesla-t4
- NVIDIA P4:
nvidia-tesla-p4
- NVIDIA P100:
nvidia-tesla-p100
- NVIDIA V100:
nvidia-tesla-v100
- Workstation virtuale NVIDIA T4:
nvidia-tesla-t4-vws
- Workstation virtuale NVIDIA P4:
nvidia-tesla-p4-vws
Workstation virtuale NVIDIA P100:
nvidia-tesla-p100-vws
Per queste workstation virtuali, una licenza NVIDIA RTX Virtual Workstation (vWS) viene aggiunto automaticamente alla tua VM.
- Nomi VM:
my-test-vm-1
,my-test-vm-2
- VM create in qualsiasi zona in
us-central1
che supporta GPU - A ogni VM sono collegate due GPU T4, specificate i flag relativi al tipo di acceleratore e al numero di acceleratori
- In ogni VM sono installati driver GPU
- Ogni VM utilizza l'immagine VM di deep learning
pytorch-latest-gpu-v20211028-debian-10
- Nomi VM:
my-test-vm-1
,my-test-vm-2
- VM create in qualsiasi zona in
us-central1
che supporta GPU - A ogni VM sono collegate due GPU T4, specificate i flag relativi al tipo di acceleratore e al numero di acceleratori
- In ogni VM sono installati driver GPU
- Ogni VM utilizza l'immagine VM di deep learning
pytorch-latest-gpu-v20211028-debian-10
Scopri come monitorare le prestazioni della GPU.
Scopri come utilizzare una larghezza di banda di rete superiore.
Scopri come per gestire gli eventi di manutenzione dell'host GPU.
Scopri come visualizza l'utilizzo effettivo e previsto di VM e GPU.
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Per ulteriori informazioni, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per creare le VM, chiedi all'amministratore di concederti Ruolo IAM Amministratore istanze Compute (v1) (
roles/compute.instanceAdmin.v1
) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.Questo ruolo predefinito contiene le autorizzazioni necessarie per creare le VM. Per vedere le autorizzazioni esatte obbligatorie, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per creare le VM sono necessarie le seguenti autorizzazioni:
Potresti anche riuscire a ottenere queste autorizzazioni con ruoli personalizzati e altri ruoli predefiniti.
Panoramica
Quando crei VM con GPU collegate utilizzando il metodo di creazione in blocco, puoi scegliere per creare VM in una regione (ad esempio
us-central1
) o in una zona specifica come (us-central1-a
).Se scegli di specificare una regione, Compute Engine posiziona le VM in qualsiasi zona all'interno della regione che supporta le GPU.
Crea gruppi di VM ottimizzate per l'acceleratore
La famiglia di macchine ottimizzate per l'acceleratore è disponibile nei modelli A3 High e A3 Mega, A2 Standard, A2 Ultra e G2.
Ogni tipo di macchina ottimizzato per l'acceleratore ha un modello specifico di GPU NVIDIA in allegato.
Puoi creare un gruppo di VM ottimizzate per l'acceleratore utilizzando il metodo Google Cloud CLI, oppure REST.
gcloud
Per creare un gruppo di VM, utilizza la classe
gcloud compute instances bulk create
un comando kubectl. Per ulteriori informazioni sui parametri e su come usare questo comando, consulta Crea VM in blocco.I seguenti flag facoltativi sono mostrati nel comando di esempio:
Esempio
Questo esempio crea due VM con GPU collegate utilizzando il seguente codice specifiche:
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 --restart-on-failure \ [--preemptible] \ [--accelerator=type=nvidia-l4-vws,count=VWS_ACCELERATOR_COUNT]
Sostituisci quanto segue:
Se l'operazione ha esito positivo, l'output è simile al seguente:
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
Utilizza la
instances.bulkInsert
predefinito con parametri richiesti per creare più VM in una zona. Per ulteriori informazioni sui parametri e su come usare questo comando, consulta Crea VM in blocco.Esempio
Questo esempio crea due VM con GPU collegate utilizzando il seguente codice specifiche:
Sostituisci quanto segue:
Impostazioni aggiuntive:
Limitazioni
VM A3
Le seguenti limitazioni si applicano alle VM che utilizzano i tipi di macchina A3 High e A3 Mega:
VM standard A2
VM A2 Ultra
VM G2
Crea gruppi di VM N1 per uso generico
Puoi creare un gruppo di VM con GPU collegate utilizzando Google Cloud CLI, oppure REST.
Questa sezione descrive come creare più VM utilizzando i seguenti tipi di GPU:
GPU NVIDIA:
NVIDIA RTX Virtual Workstation (vWS) (precedentemente nota come NVIDIA GRID):
gcloud
Per creare un gruppo di VM, utilizza la classe
gcloud compute instances bulk create
un comando kubectl. Per ulteriori informazioni sui parametri e su come utilizzare questo comando, consulta Crea VM in blocco.Esempio
L'esempio seguente crea due VM con GPU collegate utilizzando le seguenti specifiche:
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
Se l'operazione ha esito positivo, l'output è simile al seguente:
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
Utilizza la
instances.bulkInsert
predefinito con parametri richiesti per creare più VM in una zona. Per ulteriori informazioni sui parametri e su come utilizzare questo comando, consulta Crea VM in blocco.Esempio
L'esempio seguente crea due VM con GPU collegate utilizzando le seguenti specifiche:
Sostituisci
PROJECT_ID
con l'ID progetto.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/region/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" } ] } } }
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 2024-08-02 UTC.
[{ "type": "thumb-down", "id": "hardToUnderstand", "label":"Hard to understand" },{ "type": "thumb-down", "id": "incorrectInformationOrSampleCode", "label":"Incorrect information or sample code" },{ "type": "thumb-down", "id": "missingTheInformationSamplesINeed", "label":"Missing the information/samples I need" },{ "type": "thumb-down", "id": "translationIssue", "label":"Problema di traduzione" },{ "type": "thumb-down", "id": "otherDown", "label":"Altra" }] [{ "type": "thumb-up", "id": "easyToUnderstand", "label":"Facile da capire" },{ "type": "thumb-up", "id": "solvedMyProblem", "label":"Il problema è stato risolto" },{ "type": "thumb-up", "id": "otherUp", "label":"Altra" }] -