Monitorize com a CLI tpu-info
A CLI tpu-info é uma ferramenta para detetar dispositivos Cloud TPU e ler métricas de tempo de execução da biblioteca libtpu, incluindo a utilização de memória e o ciclo de trabalho. Suporta capturas estáticas únicas e streaming em direto para monitorizar as métricas continuamente.
Instalação
Instale o lançamento mais recente através do pip:
pip install tpu-info
Em alternativa, instale tpu-info a partir da origem:
pip install git+https://github.com/google/cloud-accelerator-diagnostics/#subdirectory=tpu_info
Se já tiver instalado uma versão do tpu-info, certifique-se de que é compatível com o seu ambiente e que não lhe faltam métricas nem funcionalidades.
Para mais informações, consulte o artigo Funcionalidades ou métricas em falta.
Aceda às métricas padrão da LibTPU através da CLI
Use o seguinte comando para ver as métricas tpu-info predefinidas com a CLI:
tpu-info
O resultado é semelhante ao seguinte:
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 │
└───────────────┴───────────────┴───────────────┴───────────────┘
Utilização
Para ver os dados de utilização atuais da TPU, tpu-info requer uma carga de trabalho de TPU em execução
com uma framework de ML suportada, como JAX ou PyTorch/XLA. Pode executar o comando
tpu-info no seu terminal com as seguintes flags.
Processo
Use a flag --process ou -p para apresentar informações sobre os processos em execução na TPU.
$ tpu-info --process
O resultado deve ser semelhante ao seguinte:
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
Use a flag --metric para apresentar métricas específicas. Pode especificar várias métricas separadas por espaços. Seguem-se algumas métricas suportadas comuns:
hbm_usageduty_cycle_percenttensorcore_utilizationbuffer_transfer_latencyhost_to_device_transfer_latencydevice_to_host_transfer_latencycollective_e2e_latency
$ tpu-info --metric duty_cycle_percent hbm_usage
O resultado deve ser semelhante ao seguinte:
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 │
└────────┴───────────────────────┘
Métricas de listas
Use a flag --list_metrics para apresentar todas as métricas suportadas que podem ser pedidas com a flag --metric.
$ tpu-info --list_metrics
O resultado deve ser semelhante ao seguinte:
╭─ 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 │
╰─────────────────────────────────────────────────────────────────────────────────────────────────╯
Métricas de streams
O modo de streaming atualiza periodicamente e apresenta estatísticas de utilização atualizadas. Para fazer stream das métricas da LibTPU, adicione a flag --streaming ao comando tpu-info. Use a flag --rate para controlar a cadência do streaming em segundos.
Use o seguinte comando para transmitir as métricas tpu-info predefinidas com a CLI:
# Refresh metrics every 2 seconds
tpu-info --streaming --rate 2
O resultado é semelhante ao seguinte:
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 do TPU-Z
O TPU-Z é uma funcionalidade de telemetria e depuração para TPUs. Fornece informações detalhadas sobre o estado de tempo de execução para todos os núcleos da TPU anexados a um anfitrião. A funcionalidade é fornecida através do módulo tpuz, que faz parte do módulo libtpu.sdk no SDK Python libtpu. O módulo fornece uma vista geral do estado de cada núcleo.
O exemplo de utilização principal do TPU-Z é o diagnóstico de bloqueios ou impasses em cargas de trabalho de TPU distribuídas. Pode consultar o serviço TPU-Z em anfitriões para capturar o estado de cada núcleo, comparando os contadores de programas, as localizações HLO e os IDs de execução em todos os núcleos para identificar anomalias.
Use o seguinte comando para ver as métricas do TPU-Z através da CLI:
tpu-info --metric core_state
tpu-info --metric sequencer_state
tpu-info --metric sequencer_state_detailed
tpu-info --metric queued_program
A saída deve incluir as tabelas core_state, sequencer_state, sequencer_state_detailed e queued_programs.
Informações principais do estado
A tabela Core State Information (core_state) fornece informações sobre os núcleos de um determinado chip. As TPUs têm um ou dois núcleos por chip, consoante a geração.
| Campo | Descrição | Valores de exemplo |
|---|---|---|
| ID do chip | O ID do chip ao qual o núcleo pertence. | 0 |
| ID global principal | O ID exclusivo do núcleo em todo o sistema de TPU. | 1 |
| Tipo de núcleo | O tipo de núcleo da TPU. | "TPU_CORE_TYPE_TENSOR_CORE""TPU_CORE_TYPE_SPARSE_CORE" |
| xdb Server Running | Indica se o servidor do depurador do acelerador (XDB) está em execução num núcleo da TPU específico. | True |
O resultado deve ser semelhante à seguinte tabela:
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 │
└──────────────┴───────────────┴─────────────────────────────┴───────────────┘
Informações do estado do sequenciador
A tabela Sequencer State Information (sequencer_state) fornece informações
sobre o estado de um sequenciador num núcleo. Um sequenciador é uma unidade de controlo num núcleo da TPU responsável por obter, descodificar e orquestrar a execução de instruções. Pode haver vários sequenciadores para um único núcleo.
| Métrica | Descrição | Valores de exemplo |
|---|---|---|
| ID do chip | O ID do chip ao qual o núcleo pertence. | 0 |
| ID global principal | O ID exclusivo do núcleo em todo o sistema de TPU. | 1 |
| Contador de programas | O endereço de memória da instrução a ser executada pelo sequenciador. | 15390 |
| Tracemark | O ID de lançamento do programa atual ou mais recente. Este campo está ausente se não for aplicável. | 2147483647 |
| ID do programa | O ID associado a uma instância específica de um programa que está a ser iniciado para execução num núcleo da TPU. | 3230481660274331500 |
| ID da execução | O ID da execução associado ao programa. | 1150 |
| Tipo de sequência | O tipo de sequenciador. | "TPU_SEQUENCER_TYPE_SPARSE_CORE_SEQUENCER""TPU_SEQUENCER_TYPE_SPARSE_CORE_TILE_EXECUTE_CORE_SEQUENCER" |
O resultado deve ser semelhante à seguinte tabela:
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 │
└━━━━━━┴━━━━━━━┴━━━━━━━━━━━━━━━┴━━━━━━━━━━━━━━━┴━━━━━━━━━━━━━━━┴━━━━━━━┴────────────────────────────────┘
Informações de estado do sequenciador (detalhadas)
A tabela Sequencer State Information (detailed) (sequencer_state_detailed) fornece todas as informações da tabela Sequencer State Information (sequencer_state), juntamente com as seguintes métricas adicionais:
| Métrica | Descrição | Valores de exemplo |
|---|---|---|
| Detalhes do HLO | Informações detalhadas sobre o HLO, se disponíveis. | [] |
| ID de execução do programa na fila | O ID de execução deste programa em fila. | 81 |
| ID de lançamento do programa em fila | O ID de lançamento deste programa em fila. | 1394130914 |
| Erro principal | Contém mensagens de erro para este núcleo. Este campo está ausente se não existirem erros. | "Failed to parse launch id: 0xdcf36153" |
| Localização do HLO | Informações de localização do otimizador de nível superior (HLO). | "no HLO mapping""HLO: fusion.11; HLO computation: main.126_spmd" |
O resultado deve ser semelhante à seguinte tabela:
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 em fila
A tabela Programas em fila (queued_programs) apresenta a lista de programas
em fila para execução.
| Métrica | Descrição | Valores de exemplo |
|---|---|---|
| ID do chip | O ID do chip ao qual o núcleo pertence. | 0 |
| Global Core | O ID exclusivo do núcleo em todo o sistema de TPU. | 1 |
| Program Counter:Tag | O endereço de memória da instrução a ser executada pelo sequenciador. | 15390 |
| Tracemark | O ID de lançamento do programa atual ou mais recente. Este campo está ausente se não for aplicável. | 2147483647 |
| ID do programa | O ID associado a uma instância específica de um programa que está a ser iniciado para execução num núcleo da TPU. | 3230481660274331500 |
| ID da execução | O ID da execução associado ao programa. | 1150 |
| Tipo de sequência | O tipo de sequenciador. | "\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|
│ ... │ ... │ ... │ ... │ ... │ ... │ ... │
└━━━━━━┴━━━━━━━┴━━━━━━━━━━━━━━━┴━━━━━━━━━━━┴━━━━━━━━━━━━━┴━━━━━━━┴────────────────────────────────────┘
Funcionalidades ou métricas em falta
Se não conseguir ver algumas funcionalidades ou métricas, a causa mais comum é uma versão desatualizada do libtpu. As funcionalidades e as métricas no tpu-info estão incluídas nos lançamentos do libtpu, e as versões desatualizadas podem não ter novas funcionalidades e métricas.
Para verificar se a versão do tpu-info é compatível com o seu ambiente, use a flag --version ou -v:
$ tpu-info --version
A saída seguinte mostra um exemplo de um ambiente compatível:
- tpu-info version: 0.5.1
- libtpu version: 0.0.18
- accelerator type: v6e
O resultado seguinte mostra um exemplo de um ambiente incompatível:
- tpu-info version: 0.5.1
- libtpu version: N/A (incompatible environment)
- accelerator type: N/A (incompatible environment)
Se estiver a usar uma versão desatualizada, atualize para a versão mais recente do libtpu:
pip install --upgrade libtpu