Mit der tpu-info-Befehlszeile überwachen

Die tpu-info-Befehlszeile ist ein Tool zum Erkennen von Cloud TPU-Geräten und zum Lesen von Laufzeitmesswerten aus der libtpu-Bibliothek, einschließlich Arbeitsspeichernutzung und Duty Cycle. Es unterstützt statische, einmalige Momentaufnahmen und Livestreams, um Messwerte kontinuierlich zu überwachen.

Installation

Installieren Sie den neuesten Release mit pip:

pip install tpu-info

Alternativ können Sie tpu-info aus der Quelle installieren:

pip install git+https://github.com/google/cloud-accelerator-diagnostics/#subdirectory=tpu_info

Wenn Sie bereits eine Version von tpu-info installiert haben, prüfen Sie, ob sie mit Ihrer Umgebung kompatibel ist und ob Messwerte und Funktionen fehlen. Weitere Informationen finden Sie unter Fehlende Funktionen oder Messwerte.

Über die Befehlszeile auf Standard-LibTPU-Messwerte zugreifen

Mit dem folgenden Befehl können Sie die Standardmesswerte für tpu-info mit der CLI aufrufen:

tpu-info

Die Ausgabe sieht etwa so aus:

TPU Chips
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━┓
┃ Chip          Type          Devices  PID    ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╕━━━━━━━━━╕━━━━━━━━┩
│ /dev/vfio/0   TPU v6e chip  1        1052   │
│ /dev/vfio/1   TPU v6e chip  1        1052   │
│ /dev/vfio/2   TPU v6e chip  1        1052   │
│ /dev/vfio/3   TPU v6e chip  1        1052   │
└──────────────┴──────────────┴─────────┴────────┘
TPU Runtime Utilization
┏━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┓
┃ Chip    HBM usage                 Duty cycle ┃
┡━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━╕━━━━━━━━━━━━┩
│ 8       18.45 GiB / 31.25 GiB        100.00% │
│ 9       10.40 GiB / 31.25 GiB        100.00% │
│ 12      10.40 GiB / 31.25 GiB        100.00% │
│ 13      10.40 GiB / 31.25 GiB        100.00% │
└────────┴──────────────────────────┴────────────┘
TensorCore Utilization
┏━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Core ID  TensorCore Utilization ┃
┡━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩
│ 0                         13.60%│
│ 1                         14.81%│
│ 2                         14.36%│
│ 3                         13.60%│
└─────────┴────────────────────────┘
TPU Buffer Transfer Latency
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┓
┃ Buffer Size   P50           P90           P95           P999         ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╕━━━━━━━━━━━━━━╕━━━━━━━━━━━━━━╕━━━━━━━━━━━━━━┩
│ 8MB+          108978.82 us  164849.81 us  177366.42 us  212419.07 us │
│ 4MB+          21739.38 us   38126.84 us   42110.12 us   55474.21 us  │
└──────────────┴──────────────┴──────────────┴──────────────┴──────────────┘
TPU gRPC TCP Minimum RTT
┏━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┓
┃ P50       P90       P95       P999     ┃
┡━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━┩
│ 35.99 us  52.15 us  53.83 us  55.51 us │
└──────────┴──────────┴──────────┴──────────┘
TPU gRPC TCP Delivery Rate
┏━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ P50            P90            P95            P999          ┃
┡━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ 12305.96 Mbps  18367.10 Mbps  24872.11 Mbps  44841.55 Mbps │
└───────────────┴───────────────┴───────────────┴───────────────┘

Nutzung

Um aktuelle Daten zur TPU-Auslastung aufzurufen, ist für tpu-info eine laufende TPU-Arbeitslast mit einem unterstützten ML-Framework wie JAX oder PyTorch/XLA erforderlich. Sie können den Befehl tpu-info in Ihrem Terminal mit den folgenden Flags ausführen.

Prozess

Verwenden Sie das Flag --process oder -p, um Informationen zu den Prozessen anzuzeigen, die auf der TPU ausgeführt werden.

$ tpu-info --process

Die Ausgabe sollte in etwa so aussehen:

TPU Process Info
┏━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━┓
┃ Chip        ┃ PID    ┃ Process Name ┃
┡━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━┩
│ /dev/vfio/0 │ 799657 │ python3      │
│ /dev/vfio/1 │ 799657 │ python3      │
│ /dev/vfio/2 │ 799657 │ python3      │
│ /dev/vfio/3 │ 799657 │ python3      │
│ /dev/vfio/4 │ 799657 │ python3      │
│ /dev/vfio/5 │ 799657 │ python3      │
│ /dev/vfio/6 │ 799657 │ python3      │
│ /dev/vfio/7 │ 799657 │ python3      │
└─────────────┴────────┴──────────────┘

Messwert

Mit dem Flag --metric können Sie bestimmte Messwerte anzeigen. Sie können mehrere durch Leerzeichen getrennte Messwerte angeben. Einige häufig unterstützte Messwerte:

  • hbm_usage
  • duty_cycle_percent
  • tensorcore_utilization
  • buffer_transfer_latency
  • host_to_device_transfer_latency
  • device_to_host_transfer_latency
  • collective_e2e_latency
$ tpu-info --metric duty_cycle_percent hbm_usage

Die Ausgabe sollte in etwa so aussehen:

TPU Duty Cycle
┏━━━━━━━━━┳━━━━━━━━━━━━━━━━┓
┃ Core ID ┃ Duty Cycle (%) ┃
┡━━━━━━━━━╇━━━━━━━━━━━━━━━━┩
│ 0       │ 100.00%        │
│ 1       │ 100.00%        │
│ 2       │ 100.00%        │
│ 3       │ 100.00%        │
│ 4       │ 100.00%        │
│ 5       │ 100.00%        │
│ 6       │ 100.00%        │
│ 7       │ 100.00%        │
└─────────┴────────────────┘
TPU HBM Usage
┏━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Chip   ┃ HBM Usage (GiB)       ┃
┡━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━┩
│ 0      │ 29.50 GiB / 31.25 GiB │
│ 1      │ 21.50 GiB / 31.25 GiB │
│ 2      │ 21.50 GiB / 31.25 GiB │
│ 3      │ 21.50 GiB / 31.25 GiB │
│ 4      │ 21.50 GiB / 31.25 GiB │
│ 5      │ 21.50 GiB / 31.25 GiB │
│ 6      │ 21.50 GiB / 31.25 GiB │
│ 7      │ 21.50 GiB / 31.25 GiB │
└────────┴───────────────────────┘

Messwerte auflisten

Mit dem Flag --list_metrics können Sie alle unterstützten Messwerte anzeigen, die mit dem Flag --metric angefordert werden können.

$ tpu-info --list_metrics

Die Ausgabe sollte in etwa so aussehen:

╭─ Supported Metrics ─────────────────────────────────────────────────────────────────────────────╮
│         grpc_tcp_min_rtt                                                                        │
│         host_to_device_transfer_latency                                                         │
│         grpc_tcp_delivery_rate                                                                  │
│         buffer_transfer_latency                                                                 │
│         collective_e2e_latency                                                                  │
│         device_to_host_transfer_latency                                                         │
│         hbm_usage                                                                               │
│         duty_cycle_percent                                                                      │
│         tensorcore_utilization                                                                  │
╰─────────────────────────────────────────────────────────────────────────────────────────────────╯

Stream-Messwerte

Im Streamingmodus werden die aktuellen Nutzungsstatistiken regelmäßig aktualisiert und angezeigt. Wenn Sie die LibTPU-Messwerte streamen möchten, fügen Sie dem Befehl tpu-info das Flag --streaming hinzu. Mit dem Flag --rate können Sie die Häufigkeit des Streamings in Sekunden festlegen.

Verwenden Sie den folgenden Befehl, um die Standardmesswerte von tpu-info mit der Befehlszeile zu streamen:

# Refresh metrics every 2 seconds
tpu-info --streaming --rate 2

Die Ausgabe sieht etwa so aus:

Refresh rate: 0.1s
Last update: 2025-07-24 11:00:59 UTC
Libtpu version: 0.0.19.dev20250721+nightly
Accelerator type: v6e

TPU Chips
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━┓
┃ Chip         ┃ Type         ┃ Devices ┃ PID    ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╢━━━━━━━━━╢━━━━━━━━┪
│ /dev/vfio/0  │ TPU v6e chip │ 1       │ 1022   │
│ /dev/vfio/1  │ TPU v6e chip │ 1       │ 1022   │
│ /dev/vfio/2  │ TPU v6e chip │ 1       │ 1022   │
│ /dev/vfio/3  │ TPU v6e chip │ 1       │ 1022   │
└──────────────┴──────────────┴─────────┴────────┘
TPU Runtime Utilization
┏━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┓
┃ Chip   ┃ HBM usage                ┃ Duty cycle ┃
┡━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━╕━━━━━━━━━━━━┩
│ 8      │ 17.26 GiB / 31.25 GiB    │    100.00% │
│ 9      │  9.26 GiB / 31.25 GiB    │    100.00% │
│ 12     │  9.26 GiB / 31.25 GiB    │    100.00% │
│ 13     │  9.26 GiB / 31.25 GiB    │    100.00% │
└────────┴──────────────────────────┴────────────┘
TensorCore Utilization
┏━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Core ID ┃ TensorCore Utilization ┃
┡━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━┩
│ 0       │                  15.17%│
│ 1       │                  14.62%│
│ 2       │                  14.68%│
│ 3       │                  15.14%│
└─────────┴────────────────────────┘
TPU Buffer Transfer Latency
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┓
┃ Buffer Size  ┃ P50          ┃ P90          ┃ P95          ┃ P999         ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╕━━━━━━━━━━━━━━╕━━━━━━━━━━━━━━╕━━━━━━━━━━━━━━┩
│ 8MB+         │ 18264.03 us  │ 33263.06 us  │ 35990.98 us  │ 53997.32 us  │
└──────────────┴──────────────┴──────────────┴──────────────┴──────────────┘
TPU gRPC TCP Minimum RTT
┏━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┓
┃ P50      ┃ P90      ┃ P95      ┃ P999     ┃
┡━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━┩
│ 35.99 us │ 52.15 us │ 53.83 us │ 55.51 us │
└──────────┴──────────┴──────────┴──────────┘
TPU gRPC TCP Delivery Rate
┏━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ P50           ┃ P90           ┃ P95           ┃ P999          ┃
┡━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ 12305.96 Mbps │ 18367.10 Mbps │ 24872.11 Mbps │ 44841.55 Mbps │
└───────────────┴───────────────┴───────────────┴───────────────┘

TPU-Z-Messwerte

TPU-Z ist eine Telemetrie- und Debugging-Einrichtung für TPUs. Sie enthält detaillierte Informationen zum Laufzeitstatus für alle TPU-Kerne, die an einen Host angehängt sind. Die Funktionalität wird über das Modul tpuz bereitgestellt, das Teil des Moduls libtpu.sdk im libtpu Python SDK ist. Das Modul bietet einen Snapshot des Status der einzelnen Kerne.

Der primäre Anwendungsfall für TPU-Z ist die Diagnose von Hängern oder Deadlocks in verteilten TPU-Arbeitslasten. Sie können den TPU-Z-Dienst auf Hosts abfragen, um den Status jedes Kerns zu erfassen. Dabei werden die Programmzähler, HLO-Speicherorte und Ausführungs-IDs aller Kerne verglichen, um Anomalien zu erkennen.

Verwenden Sie den folgenden Befehl, um TPU-Z-Messwerte über die CLI aufzurufen:

tpu-info --metric core_state
tpu-info --metric sequencer_state
tpu-info --metric sequencer_state_detailed
tpu-info --metric queued_program

Die Ausgabe sollte die Tabellen core_state, sequencer_state, sequencer_state_detailed und queued_programs enthalten.

Wichtige Statusinformationen

Die Tabelle „Core State Information“ (core_state) enthält Informationen zu den Kernen eines bestimmten Chips. TPUs haben je nach Generation einen oder zwei Kerne pro Chip.

Feld Beschreibung Beispielwerte
Chip-ID Die ID des Chips, zu dem der Core gehört. 0
Globale Core-ID Die eindeutige ID des Kerns im gesamten TPU-System. 1
Core-Typ Der Typ des TPU-Kerns. "TPU_CORE_TYPE_TENSOR_CORE"
"TPU_CORE_TYPE_SPARSE_CORE"
xdb-Server wird ausgeführt Gibt an, ob der Accelerator Debugger-Server (XDB) auf einem bestimmten TPU-Kern ausgeführt wird. True

Die Ausgabe sollte in etwa so aussehen:

Core Information
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Chip ID      ┃ Global Core ID┃ Core Type                   ┃ xdb Server    ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ 0            │ 0             │ TPU_CORE_TYPE_TENSOR_CORE   │ True          │
│ 0            │ 1             │ TPU_CORE_TYPE_SPARSE_CORE   │ True          │
│ 1            │ 2             │ TPU_CORE_TYPE_SPARSE_CORE   │ False         │
│ 1            │ 3             │ TPU_CORE_TYPE_SPARSE_CORE   │ False         │
│ 2            │ 4             │ TPU_CORE_TYPE_SPARSE_CORE   │ True          │
│ 2            │ 5             │ TPU_CORE_TYPE_SPARSE_CORE   │ True          │
└──────────────┴───────────────┴─────────────────────────────┴───────────────┘

Informationen zum Sequenzerstatus

Die Tabelle „Sequencer State Information“ (sequencer_state) enthält Informationen zu einem Sequencer-Status auf einem Core. Ein Sequencer ist eine Steuereinheit in einem TPU-Kern, die für das Abrufen, Decodieren und Orchestrieren der Ausführung von Anweisungen zuständig ist. Für einen einzelnen Kern können mehrere Sequenzer vorhanden sein.

Messwert Beschreibung Beispielwerte
Chip-ID Die ID des Chips, zu dem der Core gehört. 0
Globale Core-ID Die eindeutige ID des Kerns im gesamten TPU-System. 1
Programmzähler Die Speicheradresse des Befehls, der vom Sequenzer ausgeführt werden soll. 15390
Tracemark Die Launch-ID des aktuellen oder letzten Programms. Dieses Feld ist nicht vorhanden, wenn es nicht zutrifft. 2147483647
Programm-ID Die ID, die einer bestimmten Instanz eines Programms zugeordnet ist, das zur Ausführung auf einem TPU-Kern gestartet wird. 3230481660274331500
Ausführungs-ID Die mit dem Programm verknüpfte Lauf-ID. 1150
Sequenztyp Der Typ des Sequenzers. "TPU_SEQUENCER_TYPE_SPARSE_CORE_SEQUENCER"
"TPU_SEQUENCER_TYPE_SPARSE_CORE_TILE_EXECUTE_CORE_SEQUENCER"

Die Ausgabe sollte in etwa so aussehen:

Sequencer Info
┏━━━━━━┳━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Chip ┃ Global┃ Program       ┃ Tracemark     ┃ Program ID    ┃ Run   ┃ Sequence Type                  ┃
┃ ID   ┃ Core  ┃ Counter:Tag   ┃               ┃               ┃ ID    ┃                                ┃
┡━━━━━━╇━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ 0    │ 0     │ 760:1         │ 2147483647    │ -5.75e17      │ 1150  │ TPU_SEQ_SPARSE_CORE_SEQUENCER  │
│ 0    │ 1     │ 9:0           │ 0             │ -1            │ -1    │ TPU_SEQ_SPARSE_TILE_EXECUTE    │
│ 0    │ 1     │ 0:0           │ 0             │ -1            │ -1    │ TPU_SEQ_SPARSE_TILE_EXECUTE    │
│ 1    │ 2     │ 9:0           │ 0             │ -1            │ -1    │ TPU_SEQ_SPARSE_TILE_EXECUTE    │
│ 1    │ 3     │ 0:0           │ 0             │ -1            │ -1    │ TPU_SEQ_SPARSE_TILE_EXECUTE    │
│ 1    │ 3     │ 9:0           │ 0             │ -1            │ -1    │ TPU_SEQ_SPARSE_TILE_EXECUTE    │
│ 1    │ 3     │ 0:0           │ 0             │ -1            │ -1    │ TPU_SEQ_SPARSE_TILE_EXECUTE    │
│ 2    │ 4     │ 9:0           │ 0             │ -1            │ -1    │ TPU_SEQ_SPARSE_TILE_EXECUTE    │
│ 2    │ 4     │ 0:0           │ 0             │ -1            │ -1    │ TPU_SEQ_SPARSE_TILE_EXECUTE    │
│ 2    │ 4     │ 9:0           │ 0             │ -1            │ -1    │ TPU_SEQ_SPARSE_TILE_EXECUTE    │
│ 2    │ 5     │ 9:0           │ 0             │ -1            │ -1    │ TPU_SEQ_SPARSE_TILE_EXECUTE    │
│ 2    │ 5     │ 0:0           │ 0             │ -1            │ -1    │ TPU_SEQ_SPARSE_TILE_EXECUTE    │
└━━━━━━┴━━━━━━━┴━━━━━━━━━━━━━━━┴━━━━━━━━━━━━━━━┴━━━━━━━━━━━━━━━┴━━━━━━━┴────────────────────────────────┘

Sequencer-Statusinformationen (detailliert)

Die Tabelle „Sequencer State Information (detailed)“ (sequencer_state_detailed) enthält alle Informationen aus der Tabelle „Sequencer State Information“ (sequencer_state) sowie die folgenden zusätzlichen Messwerte:

Messwert Beschreibung Beispielwerte
HLO-Details Detaillierte Informationen zu HLOs, sofern verfügbar. []
ID des in die Warteschlange eingereihten Programmlaufs Die Lauf-ID für dieses in die Warteschlange gestellte Programm. 81
ID für die Einführung von Programmen in der Warteschlange Die Launch-ID für dieses Programm in der Warteschlange. 1394130914
Grundlegender Fehler Enthält alle Fehlermeldungen für diesen Core. Dieses Feld ist nicht vorhanden, wenn keine Fehler aufgetreten sind. "Failed to parse launch id: 0xdcf36153"
HLO-Standort Standortinformationen für den High-Level-Optimizer (HLO). "no HLO mapping"
"HLO: fusion.11; HLO computation: main.126_spmd"

Die Ausgabe sollte in etwa so aussehen:

Sequencer States (Detailed)
┏━━━━━━━━━┳━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┓
┃ Chip ID ┃ Global Core ID ┃ Program Counter ┃ Tracemark  ┃ Program ID           ┃ Run ID ┃ Sequence Type                            ┃ Core Error                               ┃ HLO Location   ┃ HLO Details ┃
┡━━━━━━━━━╇━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━┩
│ 0       │ 0              │ 760             │ 2147483647 │ -5752110712385440928 │ 114    │ TPU_SEQUENCER_TYPE_TENSOR_CORE_SEQUENCER │ Failed to parse launch id: 0xdcf36109    │ no HLO mapping │ []          │
│ 0       │ 1              │ 9               │ 0          │ -1                   │ -1     │ TPU_SEQUENCER_TYPE_SPARSE_CORE_SEQUENCER │ Compiler metadata or executable          │ None           │ None        │
│         │                │                 │            │                      │        │                                          │ fingerprint not found.                   │                │             │
│ 0       │ 1              │ 0               │ 0          │ -1                   │ -1     │ TPU_SEQUENCER_TYPE_SPARSE_CORE_TILE_EXE… │ Compiler metadata or executable          │ None           │ None        │
│         │                │                 │            │                      │        │                                          │ fingerprint not found.                   │                │             │
│ 0       │ 1              │ 0               │ 0          │ -1                   │ -1     │ TPU_SEQUENCER_TYPE_SPARSE_CORE_TILE_EXE… │ Compiler metadata or executable          │ None           │ None        │
│ ...     │ ...            │                 │ ...        │ ...                  │ ...    │ ...                                      │ ...                                      │...             │ ...         │
└─────────┴────────────────┴─────────────────┴────────────┴──────────────────────┴────────┴──────────────────────────────────────────┴──────────────────────────────────────────┴────────────────┴─────────────┘

Programme in der Warteschlange

Die Tabelle „Queued programs“ (queued_programs) enthält die Liste der Programme, die für die Ausführung in die Warteschlange gestellt wurden.

Messwert Beschreibung Beispielwerte
Chip-ID Die ID des Chips, zu dem der Core gehört. 0
Global Core Die eindeutige ID des Kerns im gesamten TPU-System. 1
Program Counter:Tag Die Speicheradresse des Befehls, der vom Sequenzer ausgeführt werden soll. 15390
Tracemark Die Launch-ID des aktuellen oder letzten Programms. Dieses Feld ist nicht vorhanden, wenn es nicht zutrifft. 2147483647
Programm-ID Die ID, die einer bestimmten Instanz eines Programms zugeordnet ist, das zur Ausführung auf einem TPU-Kern gestartet wird. 3230481660274331500
Ausführungs-ID Die mit dem Programm verknüpfte Lauf-ID. 1150
Sequenztyp Der Typ des Sequenzers. "\ufffdU\ufffd4j\u7c6e\ufffd\ufffd{\u0017\ufffd\ufffdHHV\ufffdD\ufffde\uff"
Queued Programs
┏━━━━━━┳━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Chip ┃ Global┃ Program       ┃ Tracemark ┃ Program ID  ┃ Run   ┃ Sequence Type                      ┃
┃ ID   ┃ Core  ┃ Counter:Tag   ┃           ┃             ┃ ID    ┃                                    ┃
┡━━━━━━╇━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ 0    │ 0     │ 10712385440928│ 1220      │ -5.75e17    │ 1220  │ \ufffdU\...ufffd{\u0017\...\ufffde |
│ 0    │ 1     │ 31435440272417│ 1530      │ -1          │ 1530  │ \ufff4j\...\ufffd{\u0017\...\ufffde|
│ 0    │ 1     │ 10230672051156│ 1410      │ -1          │ 1410  │ \ufffde\...\ufffd{\u0017\...\ufffde|
│ ...  │ ...   │ ...           │ ...       │ ...         │ ...   │ ...                                │
└━━━━━━┴━━━━━━━┴━━━━━━━━━━━━━━━┴━━━━━━━━━━━┴━━━━━━━━━━━━━┴━━━━━━━┴────────────────────────────────────┘

Fehlende Funktionen oder Messwerte

Wenn Sie bestimmte Funktionen oder Messwerte nicht sehen können, liegt das in den meisten Fällen an einer veralteten libtpu-Version. Die Funktionen und Messwerte in tpu-info sind in den libtpu-Releases enthalten. In veralteten Versionen fehlen möglicherweise neue Funktionen und Messwerte.

Um zu prüfen, ob die Version von tpu-info mit Ihrer Umgebung kompatibel ist, verwenden Sie das Flag --version oder -v:

$ tpu-info --version

Die folgende Ausgabe zeigt ein Beispiel für eine kompatible Umgebung:

-   tpu-info version: 0.5.1
-   libtpu version: 0.0.18
-   accelerator type: v6e

Die folgende Ausgabe zeigt ein Beispiel für eine inkompatible Umgebung:

-   tpu-info version: 0.5.1
-   libtpu version: N/A (incompatible environment)
-   accelerator type: N/A (incompatible environment)

Wenn Sie eine veraltete Version verwenden, aktualisieren Sie libtpu auf die neueste Version:

pip install --upgrade libtpu