Monitorar VMs da TPU
Neste guia, explicamos como usar o Cloud Monitoring para monitorar as VMs de TPU. O Cloud Monitoring coleta automaticamente métricas e registros da TPU e da VM host. Esses dados podem ser usados para monitorar a integridade da TPU e do Compute Engine.
Com as métricas, é possível monitorar uma quantidade numérica ao longo do tempo, como a utilização da CPU, o uso da rede ou a duração da inatividade de um TensorCore. Os registros capturam eventos em um momento específico. As entradas de registro são gravadas pelo próprio código, pelos serviços doGoogle Cloud , por aplicativos de terceiros e pela infraestrutura doGoogle Cloud . Também é possível gerar métricas com base nos dados presentes em uma entrada de registro criando uma métrica com base em registros. Além disso, você também pode definir políticas de alertas com base em valores de métricas ou entradas de registro.
Para monitorar TPUs, também é possível usar o Planejador de capacidade (pré-lançamento). Com ele, você pode conferir os dados de previsão e de uso de TPU do projeto, da pasta ou da organização. Esses dados são atualizados a cada 24 horas e podem ser usados para analisar tendências de uso e planejar necessidades futuras de capacidade. Para mais informações, consulte Visão geral do Planejador de capacidade.
Acessar métricas de TPU
O Compute Engine gera dois tipos de métricas de TPU: métricas de ambiente de execução de TPU e métricas de infraestrutura de VM de TPU. É possível acessar as métricas de duas maneiras:
Biblioteca de monitoramento de TPUs: receba métricas de ambiente de execução de TPUs do SDK da LibTPU usando a biblioteca de monitoramento de TPUs. Isso permite que seus aplicativos recebam telemetria em tempo real de dentro do ambiente de convidado. Para mais informações, consulte Biblioteca de monitoramento de TPU.
Coletor de telemetria de IA: receba métricas de ambiente de execução e de infraestrutura de VM pelo coletor de telemetria de IA. O AI Telemetry Collector é executado na VM de TPU e permite acessar métricas pelo Cloud Monitoring ou pelo seu próprio pipeline de monitoramento baseado no Prometheus. Para mais informações, consulte Coletor de telemetria de IA.
Métricas de TPU
As métricas doGoogle Cloud para o Cloud TPU são geradas automaticamente pelas VMs do Compute Engine e pelo ambiente de execução do Cloud TPU. As métricas nas tabelas a seguir são geradas por VMs do Compute Engine. Para uma lista completa de métricas geradas pelo Compute Engine, consulte Métricas do Compute Engine.
As strings "tipo de métrica" nesta tabela precisam ser prefixadas com
compute.googleapis.com/. Esse prefixo foi omitido das entradas na tabela. Ao consultar um rótulo, use o prefixo metric.labels. Por exemplo,
metric.labels.LABEL="VALUE".
Disponibilidade geral (GA)
| Tipo de métrica Etapa do lançamento (níveis da hierarquia de recursos) Nome de exibição |
|
|---|---|
| Classe, Tipo, Unidade Recursos monitorados |
Descrição Rótulos |
instance/tpu/active_chips
GA
(projeto)
Contagem de chips de TPU ativos |
|
GAUGE, INT64, 1
gce_instance |
A contagem atual de chips que estão sendo usados ativamente (ou seja, não estão inativos).
accelerator_type:
tipo e geração do acelerador.
reservation_id:
o ID da reserva de máquina física.
provisioning_model:
o modelo de provisionamento associado.
protection_tier:
o modelo de proteção associado.
block_id:
o ID do bloco no cluster que hospeda a VM.
subblock_id:
o ID do sub-bloco que hospeda a VM.
is_exr:
(BOOL)
Indica se o chip faz parte de uma reserva estendida.
|
instance/tpu/scheduled_chips
GA
(projeto)
Contagem de chips de TPU programados |
|
GAUGE, INT64, 1
gce_instance |
A contagem atual de chips alocados para uma VM que está ÍNTEGRA e NÃO DESATIVADA para manutenção.
accelerator_type:
tipo e geração do acelerador.
reservation_id:
o ID da reserva de máquina física.
provisioning_model:
o modelo de provisionamento associado.
protection_tier:
o modelo de proteção associado.
block_id:
o ID do bloco no cluster que hospeda a VM.
subblock_id:
o ID do sub-bloco que hospeda a VM.
is_exr:
(BOOL)
Indica se o chip faz parte de uma reserva estendida.
|
tpu/slice/capacity/available_chips
GA
(projeto)
Contagem de chips de TPU disponíveis |
|
GAUGE, INT64, 1
compute.googleapis.com/AcceleratorSlice |
A contagem atual de chips de TPU da Reserva Estendida que estão disponíveis e prontos para uso. Amostras coletadas a cada 60 segundos. Após a amostragem, os dados não são visíveis por até 360 segundos.
accelerator_type:
tipo e geração do acelerador.
reservation_id:
o ID da reserva de máquina física.
block_id:
o ID do bloco associado à fração.
subblock_id:
o ID do sub-bloco associado à fração.
provisioning_model:
o modelo de provisionamento associado.
protection_tier:
o modelo de proteção associado.
|
tpu/slice/capacity/committed_chips
GA
(projeto)
Contagem de chips de TPU comprados |
|
GAUGE, INT64, 1
compute.googleapis.com/AcceleratorSlice |
A contagem atual de chips de TPU comprados da Reserva Estendida. Amostras coletadas a cada 60 segundos. Após a amostragem, os dados não são visíveis por até 360 segundos.
accelerator_type:
tipo e geração do acelerador.
reservation_id:
o ID da reserva de máquina física.
block_id:
o ID do bloco associado à fração.
subblock_id:
o ID do sub-bloco associado à fração.
provisioning_model:
o modelo de provisionamento associado.
protection_tier:
o modelo de proteção associado.
|
Beta
| Tipo de métrica Etapa do lançamento (níveis da hierarquia de recursos) Nome de exibição |
|
|---|---|
| Classe, Tipo, Unidade Recursos monitorados |
Descrição Rótulos |
instance/tpu/accelerator/duty_cycle
BETA
(projeto)
Ciclo de trabalho do acelerador |
|
GAUGE, DOUBLE, %
gce_instance |
Porcentagem de tempo durante o período de amostragem em que o acelerador estava processando ativamente. Os valores estão no intervalo [0,100].
accelerator_id:
ID do dispositivo do acelerador.
|
instance/tpu/accelerator/memory_bandwidth_utilization
BETA
(projeto)
Uso da largura de banda da memória do acelerador |
|
GAUGE, DOUBLE, %
gce_instance |
Porcentagem atual da largura de banda da memória do acelerador que está sendo usada. Calculada pela divisão da largura de banda da memória usada durante um período de amostragem pela largura de banda máxima aceita no mesmo período.
accelerator_id:
ID do dispositivo do acelerador.
|
instance/tpu/accelerator/memory_total
BETA
(projeto)
Memória total do acelerador |
|
GAUGE, INT64, By
gce_instance |
Memória total do acelerador alocada em bytes.
accelerator_id:
ID do dispositivo do acelerador.
|
instance/tpu/accelerator/memory_used
BETA
(projeto)
Memória do acelerador usada |
|
GAUGE, INT64, By
gce_instance |
Memória total do acelerador usada atualmente em bytes.
accelerator_id:
ID do dispositivo do acelerador.
|
instance/tpu/accelerator/tensorcore_utilization
BETA
(projeto)
Uso do TensorCore do acelerador |
|
GAUGE, DOUBLE, %
gce_instance |
Porcentagem atual do TensorCore que está sendo utilizada. Resultado da divisão das operações do TensorCore que foram realizadas em um período de amostragem pelo número de operações do TensorCore com suporte no mesmo período.
accelerator_id:
ID do dispositivo do acelerador.
|
instance/tpu/chip_state
BETA
(projeto)
Contagem de estados do chip da TPU |
|
GAUGE, INT64, 1
gce_instance |
A contagem de chips de TPU em vários estados, como íntegro, não íntegro e desconhecido.
state:
o estado do ícone.
accelerator_type:
tipo e geração do acelerador.
block_id:
o ID do bloco no cluster que hospeda a VM.
subblock_id:
o ID do sub-bloco que hospeda a VM.
reservation_id:
o ID da reserva de máquina física.
is_exr:
(BOOL)
Indica se o chip faz parte de uma reserva estendida.
|
instance/tpu/infra_health
BETA
(projeto)
Integridade da instância de TPU |
|
GAUGE, INT64, 1
gce_instance |
Indica o status geral de integridade de uma instância de TPU. Os rótulos de métricas ajudam a identificar o status de integridade específico e os motivos dos problemas em instâncias de TPU degradadas ou não íntegras, com foco principal no hardware e na integridade do sistema da TPU. As mudanças no status de integridade podem levar vários minutos para serem refletidas nessa métrica. Amostras coletadas a cada 60 segundos. Após a amostragem, os dados não são visíveis por até 420 segundos.
health_status:
o estado geral de integridade da instância de TPU. Valores possíveis: HEALTHY (funcionando conforme o esperado), UNHEALTHY (problema crítico detectado), DEGRADED (problema que afeta o desempenho), UNKNOWN (não é possível determinar o status).
unhealthy_category:
explicação do status de VM não íntegra. Esse rótulo é preenchido somente quando o valor da métrica é "Não íntegro".
machine_type:
o tipo de máquina da instância (por exemplo, ct6e-standard-4t-tpu).
machine_id:
o ID da máquina física que hospeda a VM.
block_id:
o ID do bloco no cluster que hospeda a VM.
cluster_id:
o ID do cluster que hospeda a VM.
reservation_id:
o ID da reserva de máquina física.
subblock_id:
o ID do sub-bloco que hospeda a VM.
|
instance/tpu/runtime/uptime
BETA
(projeto)
Tempo de atividade do ambiente de execução |
|
GAUGE, INT64, s
gce_instance |
Tempo de atividade do ambiente de execução de ML desde a inicialização da biblioteca de ambiente de execução (libtpu.so) pelo job de ML. Durante esse período, a biblioteca de ambiente de execução bloqueia os dispositivos de TPU para uso pelo job de ML.
ml_framework_name:
nome do framework de ML.
ml_framework_version:
versão do framework de ML.
|
instance/tpu/utilized_chips
BETA
(projeto)
Chips de TPU utilizados |
|
GAUGE, DOUBLE, 1
gce_instance |
A capacidade agregada atual utilizada expressa como um número efetivo de chips ativos. É equivalente à soma da utilização fracionária (0,0 a 1,0) de todos os chips ativos.
accelerator_type:
tipo e geração do acelerador.
reservation_id:
o ID da reserva de máquina física.
provisioning_model:
o modelo de provisionamento associado.
protection_tier:
o modelo de proteção associado.
block_id:
o ID do bloco no cluster que hospeda a VM.
subblock_id:
o ID do sub-bloco que hospeda a VM.
is_exr:
(BOOL)
Indica se o chip faz parte de uma reserva estendida.
|
tpu/multislice/accelerator/device_to_host_transfer_latencies
BETA
(projeto)
Latências de transferência do dispositivo para o host |
|
CUMULATIVE, DISTRIBUTION, us
gce_instance |
Distribuição cumulativa da latência de transferência do dispositivo para o host em cada bloco de dados. A latência começa quando a solicitação de transferência de dados para o host é emitida e termina quando uma confirmação é recebida de que a transferência de dados foi concluída.
buffer_size:
tamanho do buffer.
|
tpu/multislice/accelerator/host_to_device_transfer_latencies
BETA
(projeto)
Latências de transferência do host para o dispositivo |
|
CUMULATIVE, DISTRIBUTION, us
gce_instance |
Distribuição cumulativa da latência de transferência de host para dispositivo em cada bloco de dados do tráfego multislice. A latência começa quando a solicitação de transferência de dados para o dispositivo é emitida e termina quando uma confirmação é recebida de que a transferência de dados foi concluída.
buffer_size:
tamanho do buffer.
|
tpu/multislice/network/collective_end_to_end_latencies
BETA
(projeto)
Latências coletivas de ponta a ponta |
|
CUMULATIVE, DISTRIBUTION, us
gce_instance |
Distribuição cumulativa da latência coletiva de ponta a ponta para o tráfego multislice. A latência começa quando a solicitação para a operação de comunicação coletiva é emitida e termina quando uma confirmação é recebida de que a transferência de dados foi concluída.
input_size:
tamanho de entrada da operação coletiva.
collective_type:
Tipo da operação coletiva.
|
tpu/multislice/network/dcn_transfer_latencies
BETA
(projeto)
Latências de transferência da DCN |
|
CUMULATIVE, DISTRIBUTION, us
gce_instance |
Distribuição cumulativa de latências de transferência de rede para tráfego multislice. A latência começa quando a solicitação de transferência de dados pela DCN é emitida e termina quando é recebida uma confirmação de que a transferência de dados foi concluída.
buffer_size:
tamanho do buffer.
type:
tipo.
|
tpu/multislice/network/grpc_client_call_latencies
BETA
(projeto)
Latências de chamada do cliente gRPC |
|
CUMULATIVE, DISTRIBUTION, us
gce_instance |
Distribuição cumulativa de latências de transferência de rede para que a biblioteca gRPC conclua uma RPC do ponto de vista do autor da chamada.
buffer_size:
tamanho do buffer.
|
tpu/multislice/network/grpc_server_call_latencies
BETA
(projeto)
Latências de chamada do servidor gRPC |
|
CUMULATIVE, DISTRIBUTION, us
gce_instance |
Distribuição cumulativa de latências de transferência de rede para o servidor gRPC concluir uma RPC na perspectiva de transporte.
buffer_size:
tamanho do buffer.
|
tpu/multislice/network/grpc_tcp_delivery_rates
BETA
(projeto)
Taxas de entrega de TCP do gRPC |
|
CUMULATIVE, DISTRIBUTION, Mb/s
gce_instance |
Distribuição cumulativa das taxas de transferência de dados das conexões TCP. Cada amostra é a taxa média mais recente de transferência de dados para uma determinada conexão TCP no último intervalo de ACK do TCP. As amostras de taxas de transferência de dados são extraídas do kernel TCP do Linux a cada 20 segundos. Portanto, é esperado que cada conexão TCP crie aproximadamente três amostras por intervalo de 60 segundos. |
tpu/multislice/network/grpc_tcp_min_round_trip_times
BETA
(projeto)
Tempos mínimos de retorno do TCP do gRPC |
|
CUMULATIVE, DISTRIBUTION, us
gce_instance |
Distribuição cumulativa de latências mínimas de transferência de rede por conexão TCP. |
tpu/multislice/network/grpc_tcp_packets_retransmitted_count
BETA
(projeto)
Contagem de pacotes TCP do gRPC retransmitidos |
|
CUMULATIVE, INT64, 1
gce_instance |
Contagem total de pacotes retransmitidos. |
tpu/multislice/network/grpc_tcp_packets_sent_count
BETA
(projeto)
Contagem de pacotes TCP do gRPC enviados |
|
CUMULATIVE, INT64, 1
gce_instance |
Contagem total de pacotes enviados pelo TCP. |
instance/tpu/accelerator/core_temperature
BETA
(projeto)
Temperatura do núcleo |
|
GAUGE, DOUBLE, Cel
gce_instance |
Temperatura central da TPU.
accelerator_id:
o ID do dispositivo do acelerador. Os valores válidos são 0, 1, 2 e 3.
|
instance/tpu/accelerator/core_throttling_indicator
BETA
(projeto)
Indicador de limitação do núcleo |
|
GAUGE, DOUBLE, 1
gce_instance |
Número de frequências de relógio ignoradas por segundo em relação ao total de frequências de relógio por núcleo de TPU.
accelerator_id:
o ID do dispositivo do acelerador. Os valores válidos são 0, 1, 2 e 3.
|
instance/tpu/accelerator/hbm_power_draw
BETA
(projeto)
Consumo de energia da HBM |
|
GAUGE, DOUBLE, W
gce_instance |
Soma da energia no módulo HBM em watts (W).
accelerator_id:
o ID do dispositivo do acelerador. Os valores válidos são 0, 1, 2 e 3.
|
instance/tpu/accelerator/hbm_temperature
BETA
(projeto)
Temperatura da HBM |
|
GAUGE, DOUBLE, Cel
gce_instance |
Temperatura da memória de alta largura de banda (HBM) da TPU.
accelerator_id:
o ID do dispositivo do acelerador. Os valores válidos são 0, 1, 2 e 3.
hbm_id:
identificador do módulo de memória de largura de banda alta (HBM, na sigla em inglês). Normalmente, tem apenas o valor superior, por exemplo: hbm_0.
|
instance/tpu/accelerator/hbm_uncorrectable_count
BETA
(projeto)
Contagem de erros incorrigíveis de HBM |
|
CUMULATIVE, INT64, 1
gce_instance |
Contagem de erros não corrigíveis na HBM (fatais).
accelerator_id:
o ID do dispositivo do acelerador. Os valores válidos são 0, 1, 2 e 3.
|
instance/tpu/accelerator/mxu_temperature
BETA
(projeto)
Temperatura da MXU |
|
GAUGE, DOUBLE, Cel
gce_instance |
Temperatura da unidade de multiplicação de matriz (MXU) da TPU.
accelerator_id:
o ID do dispositivo do acelerador. Os valores válidos são 0, 1, 2 e 3.
die_id:
índice do slot para o acelerador. Normalmente, tem apenas o valor superior, por exemplo: die_0.
|
instance/tpu/accelerator/network/ici_link_flaps
BETA
(projeto)
Oscilações de link da ICI |
|
GAUGE, INT64, 1
gce_instance |
Frequência de mudanças de estado entre os estados de ativação e desativação em um link de ICI.
accelerator_id:
o ID do dispositivo do acelerador. Os valores válidos são 0, 1, 2 e 3.
|
instance/tpu/accelerator/network/ici_link_health
BETA
(projeto)
Integridade do link da ICI |
|
GAUGE, INT64, 1
gce_instance |
Um indicador numérico (0–10) que representa a integridade do link de ICI. Valores mais altos indicam níveis crescentes de instabilidade do link, desde oscilações menores e temporárias (1 a 5) até desempenho degradado persistente (6 a 9). Um valor de 10 representa uma falha fatal de link que remove automaticamente as cargas de trabalho ativas.
port_id:
ID da porta.
|
instance/tpu/accelerator/network/ici_packets_received_count
BETA
(projeto)
Contagem de pacotes ICI recebidos |
|
CUMULATIVE, INT64, 1
gce_instance |
Número total de pacotes recebidos pelo acelerador de TPU nos links de interconexão entre chips (ICI).
accelerator_id:
o ID do dispositivo do acelerador. Os valores válidos são 0, 1, 2 e 3.
|
instance/tpu/accelerator/network/ici_packets_sent_count
BETA
(projeto)
Contagem de pacotes ICI enviados |
|
CUMULATIVE, INT64, 1
gce_instance |
Número total de pacotes transmitidos pelo acelerador de TPU pelos links de interconexão entre chips (ICI).
accelerator_id:
o ID do dispositivo do acelerador. Os valores válidos são 0, 1, 2 e 3.
|
instance/tpu/accelerator/pcie_fatal_error_count
BETA
(projeto)
Contagem de erros fatais de PCIe |
|
CUMULATIVE, INT64, 1
gce_instance |
Número de erros fatais de PCIe que ocorrem na interface PCIe.
accelerator_id:
o ID do dispositivo do acelerador. Os valores válidos são 0, 1, 2 e 3.
|
instance/tpu/accelerator/pcie_nonfatal_error_count
BETA
(projeto)
Contagem de erros não fatais de PCIe |
|
CUMULATIVE, INT64, 1
gce_instance |
Número de erros não fatais de PCIe que ocorrem na interface PCIe.
accelerator_id:
o ID do dispositivo do acelerador. Os valores válidos são 0, 1, 2 e 3.
|
instance/tpu/accelerator/power_draw
BETA
(projeto)
Consumo de energia |
|
GAUGE, DOUBLE, W
gce_instance |
Consumo de energia do acelerador medido em watts (W).
accelerator_id:
o ID do dispositivo do acelerador. Os valores válidos são 0, 1, 2 e 3.
|
instance/tpu/accelerator/tray_power
BETA
(projeto)
Energia da bandeja |
|
GAUGE, DOUBLE, W
gce_instance |
Energia total consumida na bandeja da TPU.
accelerator_id:
o ID do dispositivo do acelerador. Os valores válidos são 0, 1, 2 e 3.
|
instance/tpu/accelerator/tray_temperature
BETA
(projeto)
Temperatura da bandeja |
|
GAUGE, DOUBLE, Cel
gce_instance |
Temperatura da bandeja da TPU.
accelerator_id:
o ID do dispositivo do acelerador. Os valores válidos são 0, 1, 2 e 3.
|
instance/tpu/failure_prediction_status
BETA
(projeto)
Status de degradação da TPU |
|
GAUGE, INT64, 1
gce_instance |
Essa métrica indica a probabilidade de uma máquina de TPU entrar em um estado degradado nas próximas 5 horas, conforme previsto pelo nosso algoritmo reservado. O rótulo de valor para essa métrica é NO_DEGRADATION_PREDICTED, DEGRADATION_PREDICTED, POSSIBLE_DEGRADATION_PREDICTED. Amostras coletadas a cada 60 segundos. Após a amostragem, os dados não são visíveis por até 540 segundos.
cluster_id:
o ID ofuscado do cluster que hospeda a VM.
block_id:
o ID do bloco ofuscado no cluster que hospeda a VM.
subblock_id:
o ID do sub-bloco ofuscado que hospeda a VM.
machine_id:
o nome ofuscado da máquina que hospeda a VM.
reservation_id:
o ID da reserva.
Value:
o status de uma máquina de TPU que entra em um estado degradado nas próximas 5 horas, conforme previsto pelo nosso algoritmo reservado. Os valores possíveis são "NO_DEGRADATION_PREDICTED", "DEGRADATION_PREDICTED" e "POSSIBLE_DEGRADATION_PREDICTED".
|
tpu/capacity/available_chips
BETA
(projeto)
Contagem de chips de TPU disponíveis |
|
GAUGE, INT64, 1
compute.googleapis.com/Location |
A contagem atual de chips de TPU disponíveis e prontos para uso.
accelerator_type:
o tipo e a geração do acelerador.
reservation_id:
o ID da reserva de máquina física.
provisioning_model:
o modelo de provisionamento associado.
protection_tier:
o modelo de proteção associado.
is_exr:
indica se o chip de TPU faz parte de uma reserva estendida.
|
tpu/capacity/committed_chips
BETA
(projeto)
Contagem de chips de TPU comprados |
|
GAUGE, INT64, 1
compute.googleapis.com/Location |
A contagem atual de chips de TPU comprados.
accelerator_type:
o tipo e a geração do acelerador.
reservation_id:
o ID da reserva de máquina física.
provisioning_model:
o modelo de provisionamento associado.
protection_tier:
o modelo de proteção associado.
is_exr:
indica se o chip de TPU faz parte de uma reserva estendida.
|
tpu/network/nic_packets_dropped_count_rx
BETA
(projeto)
Contagem de pacotes descartados da NIC Rx |
|
CUMULATIVE, INT64, 1
gce_instance |
O número total de pacotes recebidos descartados pela NIC do host. Isso inclui pacotes que a NIC descarta intencionalmente, como pacotes sem rota correspondente.
nic_id:
ID da placa de rede.
|
tpu/network/nic_packets_dropped_count_tx
BETA
(projeto)
Contagem de pacotes descartados da NIC Tx |
|
CUMULATIVE, INT64, 1
gce_instance |
O número total de pacotes de saída descartados pela placa de rede do host. Isso inclui pacotes que a NIC descarta intencionalmente, como pacotes sem rota correspondente. Portanto, uma pequena taxa diferente de zero é normal, mesmo quando nenhuma carga de trabalho está em execução.
nic_id:
ID da placa de rede.
|
tpu/network/nic_packets_received_count
BETA
(projeto)
Contagem de pacotes recebidos da NIC |
|
CUMULATIVE, INT64, 1
gce_instance |
A contagem total de pacotes recebidos pela placa de rede do host. Isso inclui todo o tráfego do host, não apenas o tráfego da carga de trabalho. Portanto, a contagem continua aumentando mesmo quando nenhuma carga de trabalho está em execução.
nic_id:
ID da placa de rede.
|
tpu/network/nic_packets_sent_count
BETA
(projeto)
Contagem de pacotes enviados da NIC |
|
CUMULATIVE, INT64, 1
gce_instance |
A contagem total de pacotes enviados pela NIC do host. Isso inclui todo o tráfego do host, não apenas o tráfego da carga de trabalho. Portanto, a contagem continua aumentando mesmo quando nenhuma carga de trabalho está em execução.
nic_id:
ID da placa de rede.
|
Alfa
| Tipo de métrica Etapa do lançamento (níveis da hierarquia de recursos) Nome de exibição |
|
|---|---|
| Classe, Tipo, Unidade Recursos monitorados |
Descrição Rótulos |
quota/tpus_per_tpu_family/exceeded
ALPHA
(projeto)
Contagem de TPUs por família de TPU. Erro de cota excedida |
|
DELTA, INT64, 1
compute.googleapis.com/Location |
Número de tentativas de exceder o limite da métrica de cota compute.googleapis.com/tpus_per_tpu_family. Após a amostragem, os dados não são visíveis por até 150 segundos.
limit_name:
o nome do limite.
tpu_family:
dimensão personalizada da família de TPUs.
|
quota/tpus_per_tpu_family/limit
ALPHA
(projeto)
Contagem de TPUs por família de TPU. limite de cota |
|
GAUGE, INT64, 1
compute.googleapis.com/Location |
Limite atual da métrica de cota compute.googleapis.com/tpus_per_tpu_family. Amostras coletadas a cada 60 segundos. Após a amostragem, os dados não são visíveis por até 150 segundos.
limit_name:
o nome do limite.
tpu_family:
dimensão personalizada da família de TPUs.
|
quota/tpus_per_tpu_family/usage
ALPHA
(projeto)
Contagem de TPUs por família de TPUs. Uso da cota |
|
GAUGE, INT64, 1
compute.googleapis.com/Location |
Uso atual na métrica de cota compute.googleapis.com/tpus_per_tpu_family. Após a amostragem, os dados não são visíveis por até 150 segundos.
limit_name:
o nome do limite.
tpu_family:
dimensão personalizada da família de TPUs.
|
Coletor de telemetria de IA
O AI Telemetry Collector coleta e publica métricas de TPU no namespace compute.googleapis.com para TPUs criadas usando a API Compute Engine.
Essas métricas são integradas ao sistema e fornecem visibilidade sobre a integridade
e o desempenho.
A arquitetura do AI Telemetry Collector foi projetada como um coletor leve e especializado do OpenTelemetry (OTEL). Ele usa dois receptores principais para capturar dados:
- Receptor do ambiente de execução da TPU: coleta métricas de ambiente de execução e carga de trabalho (como ciclo de trabalho e uso da memória) diretamente do ambiente de execução da TPU quando uma carga de trabalho de machine learning está ativa.
- Receptor de host da TPU: captura métricas de utilização de hardware, como utilização do TensorCore e da largura de banda da memória, diretamente do dispositivo, independentemente de uma carga de trabalho estar em execução.
O AI Telemetry Collector usa processadores para aplicar automaticamente as tags de recurso necessárias (como project_id, instance_id e zone) e exporta com segurança a telemetria diretamente para o Cloud Monitoring.
O AI Telemetry Collector vem pré-instalado nas imagens LTS do Ubuntu otimizadas para TPU do Google e é executado automaticamente quando a VM é inicializada. Para usar essa configuração, especifique o projeto e a família de imagens do acelerador oficial do Google ao criar uma instância ou um modelo de instância de VM de TPU. Depois que a VM é iniciada, o coletor de telemetria de IA envia automaticamente métricas para os painéis do Cloud Monitoring.
Se você estiver criando imagens personalizadas do sistema operacional, use o AI Telemetry
Collector depois de instalar e executar a imagem Docker
ai-telemetry-collector. Para mais informações, consulte Usar uma imagem do SO
personalizada.
Configuração
O Coletor de Telemetria de IA envia automaticamente métricas para os painéis do Cloud Monitoring e não requer outras etapas de configuração. No entanto, é possível configurar o pacote Snap ou a imagem Docker para adicionar destinos de exportação externos, alterar intervalos de coleta de métricas e incluir opções de depuração.
É possível substituir a configuração padrão por um novo arquivo de configuração ou anexar um arquivo de configuração extra à configuração padrão atual. Ao adicionar configurações, as chaves que ainda não existem são adicionadas, e as que já existem são substituídas. No entanto, matrizes e listas não são aditivas, então as novas listas precisam incluir os valores atuais e os novos.
O arquivo YAML a seguir configura o AI Telemetry Collector para enviar métricas ao Prometheus, um kit de ferramentas de monitoramento e alerta de sistemas de código aberto. Ele também ativa a opção de depuração, que imprime métricas no console.
exporters:
prometheus:
endpoint: 0.0.0.0:8889
service:
pipelines:
metrics:
exporters:
- prometheus # For more: https://prometheus.io/docs/introduction/overview/
- googlecloud # If you do not include this, you'll lose Google Cloud Monitoring
- debug # print metrics within the console
SO padrão
Se você estiver usando as imagens do Ubuntu LTS otimizadas para TPU do Google, execute o seguinte comando Snap para adicionar o novo arquivo de configuração à configuração atual:
sudo snap set \
ai-telemetry-collector \
extra-flags="--config /home/username/additional-config.yaml"
Se você quiser substituir a configuração atual, use a flag config-path em vez de extra-flags:
sudo snap set \
ai-telemetry-collector \
config-path="/home/username/new-config.yaml"
O comando snap set deve acionar uma reinicialização automática do coletor de telemetria de IA. Para verificar se o coletor foi reiniciado e aplicou as configurações, use o seguinte comando para visualizar os registros:
sudo snap logs -f ai-telemetry-collector
SO personalizado
Se você estiver usando um SO personalizado, execute o seguinte comando do Docker para adicionar o novo arquivo de configuração à configuração atual:
# First apply the default configs via `--config=/etc/ai-telemetry-collector/config.yaml`
# Then apply your additional config by volume mount.
docker run --privileged --net=host \
-v <path>/additional-config.yaml:/etc/ai-telemetry-collector/additional-config.yaml \
ai-telemetry-collector:latest \
--config=/etc/ai-telemetry-collector/config.yaml \
--config=/etc/ai-telemetry-collector/additional-config.yaml
Se você quiser substituir a configuração atual, use o seguinte comando do Docker:
# Mount a volume (your config file) to `/etc/ai-telemetry-collector/config.yaml`
# The binary automatically picks up this file.
docker run --privileged --net=host \
-v <path>/my-config.yaml:/etc/ai-telemetry-collector/config.yaml \
ai-telemetry-collector:latest
Registros de auditoria
Os serviços doGoogle Cloud geram registros de auditoria que registram atividades administrativas e de acesso nos recursos do Google Cloud . Para mais informações, consulte Registros de auditoria do Compute Engine.