Supervisa con la CLI de tpu-info

La CLI de tpu-info es una herramienta para detectar dispositivos de Cloud TPU y leer métricas de entornos de ejecución de la biblioteca de libtpu, incluido el uso de memoria y el ciclo de trabajo. Admite instantáneas estáticas y únicas, y transmisiones en vivo para supervisar las métricas de forma continua.

Instalación

Instala la versión más reciente con pip:

pip install tpu-info

Como alternativa, instala tpu-info desde la fuente:

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

Si ya instalaste una versión de tpu-info, asegúrate de que sea compatible con tu entorno y de que no falten métricas ni funciones. Para obtener más información, consulta Faltan funciones o métricas.

Accede a las métricas estándar de LibTPU con la CLI

Usa el siguiente comando para ver las métricas predeterminadas de tpu-info con la CLI:

tpu-info

El resultado es similar a lo siguiente:

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 │
└───────────────┴───────────────┴───────────────┴───────────────┘

Uso

Para ver los datos de utilización actuales de la TPU, tpu-info requiere una carga de trabajo de TPU en ejecución con un framework de AA compatible, como JAX o PyTorch/XLA. Puedes ejecutar el comando tpu-info en tu terminal con las siguientes marcas.

Proceso

Usa la marca --process o -p para mostrar información sobre los procesos que se ejecutan en la TPU.

$ tpu-info --process

El resultado debería ser similar al siguiente:

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      │
└─────────────┴────────┴──────────────┘

Métrica

Usa la marca --metric para mostrar métricas específicas. Puedes especificar varias métricas separadas por espacios. Algunas métricas admitidas comunes son las siguientes:

  • 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

El resultado debería ser similar al siguiente:

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 │
└────────┴───────────────────────┘

Consulta las métricas

Usa la marca --list_metrics para mostrar todas las métricas admitidas que se pueden solicitar con la marca --metric.

$ tpu-info --list_metrics

El resultado debería ser similar al siguiente:

╭─ 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                                                                  │
╰─────────────────────────────────────────────────────────────────────────────────────────────────╯

Transmite las métricas

El modo de transmisión se actualiza de forma periódica y muestra estadísticas de uso actualizadas. Para transmitir las métricas de LibTPU, agrega la marca --streaming al comando tpu-info. Usa la marca --rate para controlar la cadencia de la transmisión en segundos.

Usa el siguiente comando para transmitir las métricas predeterminadas de tpu-info con la CLI:

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

El resultado es similar a lo siguiente:

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 │
└───────────────┴───────────────┴───────────────┴───────────────┘

Métricas de TPU-Z

TPU-Z es una herramienta de telemetría y depuración para las TPU. Proporciona información detallada sobre el estado del entorno de ejecución de todos los núcleos de TPU conectados a un host. La funcionalidad se proporciona a través del módulo tpuz, que forma parte del módulo libtpu.sdk en el SDK de libtpu de Python. El módulo proporciona una instantánea del estado de cada núcleo.

El caso de uso principal de TPU-Z es diagnosticar bloqueos o interbloqueos en cargas de trabajo de TPU distribuidas. Puedes consultar el servicio TPU-Z en los hosts para capturar el estado de cada núcleo, comparar los contadores de programa, las ubicaciones de HLO y los IDs de ejecución en todos los núcleos para identificar anomalías.

Usa el siguiente comando para ver las métricas de TPU-Z con la CLI:

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

El resultado debe incluir las tablas core_state, sequencer_state, sequencer_state_detailed y queued_programs.

Información del estado del núcleo

La tabla de información del estado del núcleo (core_state) proporciona información sobre los núcleos de un chip determinado. Las TPU tienen uno o dos núcleos por chip, según la generación.

Campo Descripción Valores de ejemplo
ID del chip Es el ID del chip al que pertenece el núcleo. 0
ID del núcleo global Es el ID único del núcleo dentro de todo el sistema de TPU. 1
Tipo de núcleo Es el tipo de núcleo de TPU. "TPU_CORE_TYPE_TENSOR_CORE"
"TPU_CORE_TYPE_SPARSE_CORE"
Ejecución del servidor xdb Indica si el servidor del Accelerator Debugger (XDB) se ejecuta en un núcleo de TPU específico. True

El resultado debería ser similar a la siguiente tabla:

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          │
└──────────────┴───────────────┴─────────────────────────────┴───────────────┘

Información del estado del secuenciador

La tabla de información del estado del secuenciador (sequencer_state) proporciona información sobre el estado de un secuenciador en un núcleo. Un secuenciador es una unidad de control dentro de un núcleo de TPU responsable de recuperar, decodificar y coordinar la ejecución de instrucciones. Puede haber varios secuenciadores para un solo núcleo.

Métrica Descripción Valores de ejemplo
ID del chip Es el ID del chip al que pertenece el núcleo. 0
ID del núcleo global Es el ID único del núcleo dentro de todo el sistema de TPU. 1
Contador del programa Es la dirección de memoria de la instrucción que ejecutará el secuenciador. 15390
TraceMark Es el ID de lanzamiento del programa actual o más reciente. Este campo no se incluye si no corresponde. 2147483647
ID del programa Es el ID asociado a una instancia específica de un programa que se inicia para su ejecución en un núcleo de TPU. 3230481660274331500
ID de ejecución Es el ID de ejecución asociado con el programa. 1150
Tipo de secuencia Es el tipo de secuenciador. "TPU_SEQUENCER_TYPE_SPARSE_CORE_SEQUENCER"
"TPU_SEQUENCER_TYPE_SPARSE_CORE_TILE_EXECUTE_CORE_SEQUENCER"

El resultado debería ser similar a la siguiente tabla:

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    │
└━━━━━━┴━━━━━━━┴━━━━━━━━━━━━━━━┴━━━━━━━━━━━━━━━┴━━━━━━━━━━━━━━━┴━━━━━━━┴────────────────────────────────┘

Información (detallada) del estado del secuenciador

La tabla de información detallada del estado del secuenciador (sequencer_state_detailed) proporciona toda la información de la tabla información del estado del secuenciador (sequencer_state), junto con las siguientes métricas adicionales:

Métrica Descripción Valores de ejemplo
Detalles del HLO Es la información detallada del HLO, si está disponible. []
ID de ejecución del programa en cola Es el ID de ejecución de este programa en cola. 81
ID de lanzamiento del programa en cola Es el ID de lanzamiento de este programa en cola. 1394130914
Error del núcleo Contiene los mensajes de error de este núcleo. Este campo no está presente si no hay errores. "Failed to parse launch id: 0xdcf36153"
Ubicación del HLO Es la información de ubicación del optimizador de alto nivel (HLO). "no HLO mapping"
"HLO: fusion.11; HLO computation: main.126_spmd"

El resultado debería ser similar a la siguiente tabla:

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        │
│ ...     │ ...            │                 │ ...        │ ...                  │ ...    │ ...                                      │ ...                                      │...             │ ...         │
└─────────┴────────────────┴─────────────────┴────────────┴──────────────────────┴────────┴──────────────────────────────────────────┴──────────────────────────────────────────┴────────────────┴─────────────┘

Programas en cola

En la tabla de los programas en cola (queued_programs), se proporciona la lista de programas en cola para su ejecución.

Métrica Descripción Valores de ejemplo
ID del chip Es el ID del chip al que pertenece el núcleo. 0
Núcleo global Es el ID único del núcleo dentro de todo el sistema de TPU. 1
Contador de programa: etiqueta Es la dirección de memoria de la instrucción que ejecutará el secuenciador. 15390
TraceMark Es el ID de lanzamiento del programa actual o más reciente. Este campo no se incluye si no corresponde. 2147483647
ID del programa Es el ID asociado a una instancia específica de un programa que se inicia para su ejecución en un núcleo de TPU. 3230481660274331500
ID de ejecución Es el ID de ejecución asociado con el programa. 1150
Tipo de secuencia Es el tipo de secuenciador. "\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|
│ ...  │ ...   │ ...           │ ...       │ ...         │ ...   │ ...                                │
└━━━━━━┴━━━━━━━┴━━━━━━━━━━━━━━━┴━━━━━━━━━━━┴━━━━━━━━━━━━━┴━━━━━━━┴────────────────────────────────────┘

Faltan funciones o métricas

Si no puedes ver algunas funciones o métricas, la causa más común es una versión de libtpu desactualizada. Las funciones y las métricas de tpu-info se incluyen en las versiones de libtpu, y es posible que las versiones desactualizadas no incluyan funciones y métricas nuevas.

Para verificar que la versión de tpu-info sea compatible con tu entorno, usa la marca --version o -v:

$ tpu-info --version

En el siguiente resultado, se muestra un ejemplo de un entorno compatible:

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

En el siguiente resultado, se muestra un ejemplo de un entorno no compatible:

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

Si usas una versión desactualizada, actualiza a la versión más reciente de libtpu:

pip install --upgrade libtpu