Gestisci le risorse TPU
Questa pagina descrive come creare, elencare, interrompere, avviare, eliminare e connettersi a
Cloud TPU che utilizzano l'API Create Node. L'API Create Node viene chiamata quando
esegui il comando gcloud compute tpus tpu-vm create
utilizzando Google Cloud CLI
e quando crei una TPU
usando la console Google Cloud. Quando utilizzi il pulsante
all'API Node, la richiesta viene elaborata immediatamente. Se la capacità non è sufficiente
per soddisfare la tua richiesta, la richiesta non andrà a buon fine.
La best practice è creare TPU utilizzando risorse in coda anziché l'API Create Node. Quando richiedi risorse in coda, questa viene aggiunta a una coda gestita da il servizio Cloud TPU. Quando la risorsa richiesta diventa disponibile, assegnate al tuo progetto Google Cloud per uso immediato ed esclusivo. Per Per saperne di più, consulta Gestire le risorse in coda.
Quando utilizzi più sezioni, devi usare risorse in coda. Per maggiori informazioni le informazioni, vedi Introduzione a più sezioni.
Se vuoi usare Google Kubernetes Engine (GKE) per gestire le risorse TPU, devi prima creare un cluster GKE. Poi aggiungi pool di nodi contenente le sezioni TPU al tuo cluster. Per ulteriori informazioni, vedi Informazioni sulle TPU in GKE.
Prerequisiti
Prima di eseguire queste procedure, devi installare Google Cloud CLI, creare un progetto Google Cloud e abilitare l'API Cloud TPU. Per istruzioni, consulta Configurazione dell'ambiente Cloud TPU.
Se utilizzi Google Cloud CLI, puoi eseguire i comandi utilizzando
Cloud Shell, una VM di Compute Engine o la tua macchina locale. Lo
Cloud Shell ti consente di interagire con le Cloud TPU senza dover
per installare qualsiasi software. Cloud Shell si disconnette dopo un periodo di
di inattività. Se esegui comandi a lunga esecuzione, ti consigliamo di installare
Google Cloud CLI sulla tua macchina locale. Per ulteriori informazioni sul
Google Cloud CLI, consulta la documentazione di riferimento di gcloud
.
Crea una Cloud TPU utilizzando l'API Create Node
Puoi creare una Cloud TPU utilizzando gcloud
, la console Google Cloud,
oppure l'API Cloud TPU.
Quando crei una Cloud TPU, devi specificare l'immagine VM TPU (detta anche TPU la versione software). Per determinare quale immagine VM utilizzare, consulta VM TPU immagini.
Devi anche specificare la configurazione TPU in termini di TensorCores o TPU chip. Per ulteriori informazioni, consulta la sezione relativa alla versione di TPU in uso in Architettura di sistema.
gcloud
Per creare una TPU con l'API Create Node, usa
il comando gcloud compute tpus tpu-vm create
.
Il seguente comando utilizza una configurazione basata su TensorCore:
$ gcloud compute tpus tpu-vm create tpu-name \
--zone=us-central2-b \
--accelerator-type=v4-8 \
--version=tpu-software-version
Descrizioni flag di comando
zone
- La zona in cui prevedi di creare la tua Cloud TPU.
accelerator-type
- Il tipo di acceleratore specifica la versione e le dimensioni della Cloud TPU che vuoi creare. Per ulteriori informazioni sui tipi di acceleratori supportati per ogni versione di TPU, vedi Versioni TPU.
version
- La versione del software TPU.
shielded-secure-boot
(facoltativo)- Specifica che le istanze TPU vengono create con l'avvio protetto abilitato. Ciò le rende implicitamente istanze Shielded VM. Consulta la sezione Che cos'è Shielded VM? per ulteriori informazioni.
Il comando seguente crea una TPU con una topologia specifica:
$ gcloud compute tpus tpu-vm create tpu-name \
--zone=us-central2-b \
--type=v4 \
--topology=2x2x1 \
--version=tpu-software-version
Flag obbligatori
tpu-name
- Il nome della VM TPU che stai creando.
zone
- La zona in cui ti trovi creando la tua Cloud TPU.
type
- La versione di TPU che vuoi utilizzare. Per ulteriori informazioni, vedi Versioni TPU.
topology
- La disposizione fisica dei chip TPU, specificando il numero di in ogni dimensione. Per ulteriori informazioni per ogni versione di TPU, vedere Versioni TPU.
version
- La versione del software TPU che vuoi utilizzare. Per ulteriori informazioni, vedi Versioni software TPU.
Console
Nella console Google Cloud, vai alla pagina TPU:
Fai clic su Crea TPU.
Nel campo Nome, inserisci un nome per la TPU.
Nella casella Zona, seleziona la zona in cui creare la TPU.
Nella casella Tipo TPU, seleziona un tipo di acceleratore. Il tipo di acceleratore specifica la versione e la dimensione della Cloud TPU che vuoi creare. Per saperne di più sui tipi di acceleratori supportati per ogni versione di TPU, consulta la sezione Versioni TPU.
Nella casella Versione software TPU, seleziona una versione software. Quando crei un VM Cloud TPU, la versione software TPU specifica la versione della TPU il runtime per l'installazione. Per maggiori informazioni, consulta la sezione Immagini VM TPU.
Fai clic su Crea per creare le risorse.
curl
Il seguente comando utilizza curl
per creare una TPU.
$ curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d "{accelerator_type: 'v4-8', \
runtime_version:'tpu-vm-tf-2.17.0-pjrt', \
network_config: {enable_external_ips: true}, \
shielded_instance_config: { enable_secure_boot: true }}" \
https://tpu.googleapis.com/v2/projects/project-id/locations/us-central2-b/nodes?node_id=node_name
Campi obbligatori
runtime_version
- La versione del runtime di Cloud TPU che vuoi utilizzare.
project
- Il nome del tuo progetto Google Cloud registrato.
zone
- La zona in cui creerai la tua Cloud TPU.
node_name
- Il nome della VM TPU che stai creando.
Esegui uno script di avvio
Puoi eseguire uno script di avvio su ogni VM TPU specificando
Flag --metadata startup-script
durante la creazione della VM TPU. Le seguenti
crea una VM TPU utilizzando uno script di avvio.
$ gcloud compute tpus tpu-vm create tpu-name \
--zone=us-central2-b \
--accelerator-type=tpu-type \
--version=tpu-vm-tf-2.17.0-pjrt \
--metadata startup-script='#! /bin/bash
pip3 install numpy
EOF'
Connettiti a una Cloud TPU
gcloud
Connettiti a Cloud TPU tramite SSH:
$ gcloud compute tpus tpu-vm ssh tpu-name --zone=zone
Quando richiedi una sezione più grande di un singolo host, Cloud TPU crea una VM TPU per ogni host. Il numero di chip TPU per host dipende dalla Versione TPU.
Per installare programmi binari o eseguire codice, connettiti a ogni VM TPU utilizzando
tpu-vm ssh command
.
$ gcloud compute tpus tpu-vm ssh tpu-name
Per connettersi a una VM TPU specifica
mediante SSH, usa il flag --worker
che segue un indice in base a 0:
$ gcloud compute tpus tpu-vm ssh tpu-name --worker=1
Per eseguire un comando su tutte le VM TPU con un solo comando, utilizza la classe
Flag --worker=all
e --command
:
$ gcloud compute tpus tpu-vm ssh tpu-name \
--project=your_project_ID \
--zone=zone \
--worker=all \
--command='pip install "jax[tpu]==0.4.20" -f https://storage.googleapis.com/jax-releases/libtpu_releases.html'
Per più sezioni, puoi eseguire un comando su una singola VM
utilizzando il nome TPU enumerato,
a ogni prefisso di sezione e il numero aggiunto. Per eseguire un
su tutte le VM TPU in tutte le sezioni, usa i comandi --node=all
, --worker=all
e --command
, con un oggetto
--batch-size
flag.
$ gcloud compute tpus queued-resources ssh ${QUEUED_RESOURCE_ID} \
--project=project_ID \
--zone=zone \
--node=all \
--worker=all \
--command='pip install "jax[tpu]==0.4.20" -f https://storage.googleapis.com/jax-releases/libtpu_releases.html' \
--batch-size=4
Console
Per connetterti alle TPU nella console Google Cloud, utilizza SSH nel browser:
Nella console Google Cloud, vai alla pagina TPU:
Nell'elenco delle VM TPU, fai clic su SSH nella riga della VM TPU a cui vuoi connetterti.
Elenca le tue risorse Cloud TPU
Puoi elencare tutte le Cloud TPU in una zona specificata.
gcloud
$ gcloud compute tpus tpu-vm list --zone=zone
Console
Nella console Google Cloud, vai alla pagina TPU:
Recupera le informazioni su Cloud TPU
Puoi recuperare le informazioni su una Cloud TPU specificata.
gcloud
$ gcloud compute tpus tpu-vm describe tpu-name \
--zone=zone
Console
Nella console Google Cloud, vai alla pagina TPU:
Fai clic sul nome della tua Cloud TPU. Nella console vengono visualizzati i Pagina dei dettagli di Cloud TPU.
Arresta le tue risorse Cloud TPU
Puoi arrestare una singola Cloud TPU per interrompere gli addebiti senza perdere le configurazione e software.
gcloud
$ gcloud compute tpus tpu-vm stop tpu-name \
--zone=zone
Console
Nella console Google Cloud, vai alla pagina TPU:
Seleziona la casella di controllo accanto alla tua Cloud TPU.
Fai clic su
Interrompi.
Avvia le tue risorse Cloud TPU
Puoi avviare una Cloud TPU quando viene arrestata.
gcloud
$ gcloud compute tpus tpu-vm start tpu-name \
--zone=zone
Console
Nella console Google Cloud, vai alla pagina TPU:
Seleziona la casella di controllo accanto alla tua Cloud TPU.
Fai clic su
Avvia.
Elimina una Cloud TPU
Elimina le sezioni di VM TPU al termine della sessione.
gcloud
$ gcloud compute tpus tpu-vm delete tpu-name \
--project=project-id \
--zone=zone \
--quiet
Descrizioni flag di comando
zone
- La zona in cui prevedi di eliminare Cloud TPU.
Console
Nella console Google Cloud, vai alla pagina TPU:
Seleziona la casella di controllo accanto alla tua Cloud TPU.
Fai clic su
Elimina.