TPU-Ressourcen verwalten

Auf dieser Seite wird beschrieben, wie Sie mit der Create Node API Cloud TPUs erstellen, auflisten, beenden, starten, löschen und eine Verbindung dazu herstellen. Die Create Node API wird aufgerufen, wenn Sie den Befehl gcloud compute tpus tpu-vm create über die Google Cloud CLI ausführen und wenn Sie eine TPU über die Google Cloud Console erstellen. Wenn Sie die Create Node API verwenden, wird Ihre Anfrage sofort verarbeitet. Wenn nicht genügend Kapazität vorhanden ist, um Ihre Anfrage zu erfüllen, schlägt sie fehl.

Es wird empfohlen, TPUs mit in der Warteschlange befindlichen Ressourcen anstelle der Create Node API zu erstellen. Wenn Sie in die Warteschlange gestellte Ressourcen anfordern, wird die Anfrage einer vom Cloud TPU-Dienst verwalteten Warteschlange hinzugefügt. Sobald die angeforderte Ressource verfügbar ist, wird sie Ihrem Google Cloud-Projekt zugewiesen und steht Ihnen zur sofortigen und ausschließlichen Nutzung zur Verfügung. Weitere Informationen finden Sie unter In der Warteschlange befindliche Ressourcen verwalten.

Wenn Sie Multislice verwenden, müssen Sie Ressourcen in der Warteschlange verwenden. Weitere Informationen finden Sie unter Einführung in Multislice-Scans.

Wenn Sie TPU-Ressourcen mit der Google Kubernetes Engine (GKE) verwalten möchten, müssen Sie zuerst einen GKE-Cluster erstellen. Fügen Sie Ihrem Cluster dann Knotenpools mit TPU-Scheiben hinzu. Weitere Informationen finden Sie unter TPUs in GKE.

Vorbereitung

Bevor Sie diese Schritte ausführen können, müssen Sie die Google Cloud CLI installieren, ein Google Cloud-Projekt erstellen und die Cloud TPU API aktivieren. Eine Anleitung finden Sie unter Cloud TPU-Umgebung einrichten.

Wenn Sie die Google Cloud CLI verwenden, können Sie Befehle über Cloud Shell, eine Compute Engine-VM oder Ihren lokalen Computer ausführen. Mit der Cloud Shell können Sie mit Cloud TPUs interagieren, ohne Software installieren zu müssen. Die Cloud Shell-Verbindung wird nach einer gewissen Zeit der Inaktivität getrennt. Wenn Sie lang andauernde Befehle ausführen, empfehlen wir, die Google Cloud CLI auf Ihrem lokalen Computer zu installieren. Weitere Informationen zur Google Cloud CLI finden Sie in der gcloud-Referenz.

Cloud TPU mit der Create Node API erstellen

Sie können eine Cloud TPU mit gcloud, der Google Cloud Console oder der Cloud TPU API erstellen.

Wenn Sie eine Cloud TPU erstellen, müssen Sie das TPU-VM-Image (auch TPU-Softwareversion genannt) angeben. Informationen dazu, welches VM-Image Sie verwenden sollten, finden Sie unter TPU-VM-Images.

Außerdem müssen Sie die TPU-Konfiguration in TensorCores oder TPU-Chips angeben. Weitere Informationen finden Sie im Abschnitt zur von Ihnen verwendeten TPU-Version unter Systemarchitektur.

gcloud

Verwenden Sie den Befehl gcloud compute tpus tpu-vm create, um eine TPU mit der Create Node API zu erstellen. Eine Anleitung zum Konfigurieren bestimmter interner oder externer IP-Adressen finden Sie unter Externe und interne IP-Adressen.

Der folgende Befehl verwendet eine TPU-Konfiguration vom Typ „v4-8“:

$ gcloud compute tpus tpu-vm create tpu-name \
  --zone=us-central2-b \
  --accelerator-type=v4-8 \
  --version=tpu-software-version

Beschreibung der Befehls-Flags

zone
Die Zone, in der Sie die Cloud TPU erstellen möchten.
accelerator-type
Mit dem Beschleunigertyp geben Sie die Version und Größe der Cloud TPU an, die Sie erstellen möchten. Weitere Informationen zu den unterstützten Beschleunigertypen für jede TPU-Version finden Sie unter TPU-Versionen.
version
Die Version der TPU-Software
shielded-secure-boot (optional)
Gibt an, dass die TPU-Instanzen mit aktiviertem Secure Boot erstellt werden. Dadurch werden sie implizit zu Shielded VM-Instanzen. Weitere Informationen finden Sie unter Was ist Shielded VM? , um weitere Details zu erhalten.

Mit dem folgenden Befehl wird eine TPU mit einer bestimmten Topologie erstellt:

$ gcloud compute tpus tpu-vm create tpu-name \
  --zone=us-central2-b \
  --type=v4 \
  --topology=2x2x1 \
  --version=tpu-software-version

Erforderliche Flags

tpu-name
Der Name der TPU-VM, die Sie erstellen.
zone
Die Zone, in der Sie die Cloud TPU erstellen.
type
Die TPU-Version, die Sie verwenden möchten. Weitere Informationen finden Sie unter TPU-Versionen.
topology
Die physische Anordnung von TPU-Chips, wobei die Anzahl der Chips in jeder Dimension angegeben wird. Weitere Informationen zu den unterstützten Topologien für die einzelnen TPU-Versionen finden Sie unter TPU-Versionen.
version
Die TPU-Softwareversion, die Sie verwenden möchten. Weitere Informationen finden Sie unter TPU-Softwareversionen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite TPUs auf:

    TPUs aufrufen

  2. Klicken Sie auf TPU erstellen.

  3. Geben Sie im Feld Name einen Namen für die TPU ein.

  4. Wählen Sie im Feld Zone die Zone aus, in der die TPU erstellt werden soll.

  5. Wählen Sie im Feld TPU-Typ einen Beschleunigertyp aus. Mit dem Beschleunigertyp geben Sie die Version und Größe der Cloud TPU an, die Sie erstellen möchten. Weitere Informationen zu den unterstützten Beschleunigertypen für jede TPU-Version finden Sie unter TPU-Versionen.

  6. Wählen Sie im Feld TPU-Softwareversion eine Softwareversion aus. Beim Erstellen einer Cloud TPU-VM gibt die TPU-Softwareversion die Version der zu installierenden TPU-Laufzeit an. Weitere Informationen finden Sie unter TPU-VM-Images.

  7. Klicken Sie auf Erstellen, um Ihre Ressourcen zu erstellen.

curl

Im folgenden Befehl wird curl verwendet, um eine TPU zu erstellen.

$ 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.18.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

Pflichtfelder

runtime_version
Die Version der Cloud TPU-Laufzeit, die Sie verwenden möchten.
project
Der Name Ihres registrierten Google Cloud-Projekts.
zone
Die Zone, in der Sie die Cloud TPU erstellen.
node_name
Der Name der TPU-VM, die Sie erstellen.

Startskript ausführen

Sie können ein Startskript auf jeder TPU-VM ausführen, indem Sie beim Erstellen der TPU-VM das Flag --metadata startup-script angeben. Mit dem folgenden Befehl wird eine TPU-VM mit einem Startskript erstellt.

$ gcloud compute tpus tpu-vm create tpu-name \
    --zone=us-central2-b \
    --accelerator-type=tpu-type \
    --version=tpu-vm-tf-2.18.0-pjrt \
    --metadata startup-script='#! /bin/bash
      pip3 install numpy
      EOF'

Verbindung zu einer Cloud TPU herstellen

gcloud

Stellen Sie über SSH eine Verbindung zu Ihrer Cloud TPU her:

$ gcloud compute tpus tpu-vm ssh tpu-name --zone=zone

Wenn Sie ein Slice anfordern, das größer als ein einzelner Host ist, erstellt Cloud TPU für jeden Host eine TPU-VM. Die Anzahl der TPU-Chips pro Host hängt von der TPU-Version ab.

Wenn Sie Binärdateien installieren oder Code ausführen möchten, stellen Sie über die tpu-vm ssh command eine Verbindung zu jeder TPU-VM her.

$ gcloud compute tpus tpu-vm ssh tpu-name

Wenn Sie über SSH eine Verbindung zu einer bestimmten TPU-VM herstellen möchten, verwenden Sie das Flag --worker, das einem Index mit dem Wert 0 folgt:

$ gcloud compute tpus tpu-vm ssh tpu-name --worker=1

Wenn Sie einen Befehl mit einem einzigen Befehl auf allen TPU-VMs ausführen möchten, verwenden Sie die Flags --worker=all und --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'

Bei Multislice können Sie einen Befehl auf einer einzelnen VM mit dem nummerierten TPU-Namen ausführen. Dabei wird jedem Slice-Präfix die zugehörige Zahl angehängt. Wenn Sie einen Befehl auf allen TPU-VMs in allen Slices ausführen möchten, verwenden Sie die Flags --node=all, --worker=all und --command mit dem optionalen Flag --batch-size.

$ 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

Verwenden Sie SSH-in-Browser, um in der Google Cloud Console eine Verbindung zu Ihren TPUs herzustellen:

  1. Rufen Sie in der Google Cloud Console die Seite TPUs auf:

    TPUs aufrufen

  2. Klicken Sie in der Liste der TPU-VMs in der Zeile der TPU-VM, zu der Sie eine Verbindung herstellen möchten, auf SSH.

Cloud TPU-Ressourcen auflisten

Sie können alle Ihre Cloud TPU in einer bestimmten Zone auflisten.

gcloud

$ gcloud compute tpus tpu-vm list --zone=zone

Console

Rufen Sie in der Google Cloud Console die Seite TPUs auf:

TPUs aufrufen

Informationen zu Ihrer Cloud TPU abrufen

Sie können Informationen zu einer angegebenen Cloud TPU abrufen.

gcloud

$ gcloud compute tpus tpu-vm describe tpu-name \
  --zone=zone

Console

  1. Rufen Sie in der Google Cloud Console die Seite TPUs auf:

    TPUs aufrufen

  2. Klicken Sie auf den Namen Ihrer Cloud TPU. In der Console wird die Detailseite der Cloud TPU angezeigt.

Cloud TPU-Ressourcen anhalten

Sie können eine Cloud TPU anhalten, um Gebühren zu vermeiden, ohne die Konfiguration und Software Ihrer VM zu verlieren.

gcloud

$ gcloud compute tpus tpu-vm stop tpu-name \
  --zone=zone

Console

  1. Rufen Sie in der Google Cloud Console die Seite TPUs auf:

    TPUs aufrufen

  2. Klicken Sie auf das Kästchen neben Ihrer Cloud TPU.

  3. Klicken Sie auf Beenden.

Cloud TPU-Ressourcen starten

Sie können eine Cloud TPU starten, wenn sie beendet wurde.

gcloud

$ gcloud compute tpus tpu-vm start tpu-name \
  --zone=zone

Console

  1. Rufen Sie in der Google Cloud Console die Seite TPUs auf:

    TPUs aufrufen

  2. Klicken Sie auf das Kästchen neben Ihrer Cloud TPU.

  3. Klicken Sie auf  Starten.

Cloud TPU löschen

Löschen Sie Ihre TPU-VM-Scheiben am Ende der Sitzung.

gcloud

$ gcloud compute tpus tpu-vm delete tpu-name \
  --project=project-id \
  --zone=zone \
  --quiet

Beschreibung der Befehls-Flags

zone
Die Zone, in der Sie die Cloud TPU löschen möchten.

Console

  1. Rufen Sie in der Google Cloud Console die Seite TPUs auf:

    TPUs aufrufen

  2. Klicken Sie auf das Kästchen neben Ihrer Cloud TPU.

  3. Klicken Sie auf Löschen.