Resolver problemas no fluxo de trabalho do Cloud TPU

Depois que a carga de trabalho de treinamento ou de inferência estiver em execução em TPUs, a próxima etapa é verificar se ela está funcionando como esperado. O Cloud TPU gera métricas e registros que permitem procurar e depurar qualquer VM de TPU que não esteja funcionando como esperado. Nesta documentação, essas VMs são chamadas de outliers.

O fluxo de trabalho geral de solução de problemas é o seguinte:

  1. Conferir as métricas do Cloud TPU para verificar se há VMs de TPU do tipo outlier.
  2. Conferir os registros do Cloud TPU em busca das VMs de TPU outliers.
  3. Criar o perfil da carga de trabalho.

É possível conferir métricas e registros no Metrics Explorer e na Análise de registros usando o console do Google Cloud. Também é possível usar painéis de monitoramento e de geração de registros para coletar todas as métricas e registros relacionados ao Cloud TPU em painéis individuais.

Métricas de VM do Cloud TPU

O Cloud Monitoring coleta automaticamente métricas das TPUs e das VMs host do Compute Engine. As métricas acompanham quantidades numéricas ao longo do tempo, como a utilização da CPU, o uso da rede ou a duração do tempo de inatividade do TensorCore. Para mais informações sobre as métricas do Cloud TPU, consulte Como monitorar VMs de TPU.

Registros do Cloud TPU

O Cloud Logging coleta automaticamente registros das TPUs e das VMs host do Compute Engine. Ele também monitora os eventos gerados pelo Cloud TPU. Você também pode instrumentar o código para gerar registros. Dois tipos de registros são gerados pelo Cloud TPU:

  • Registros do worker da TPU
  • Registros de recursos auditados

Os registros do worker da TPU contêm informações sobre um determinado worker em uma zona específica, como a quantidade de memória disponível nele (system_available_memory_GiB).

Os registros de recursos auditados contêm informações sobre quando uma API específica do Cloud TPU foi chamada e quem fez a chamada. Por exemplo, CreateNode, UpdateNode e DeleteNode.

Também é possível usar o pacote PyPi cloud-tpu-diagnostics para gravar stack traces em registros. Para mais informações, consulte Como depurar VMs de TPU.

Para mais informações sobre registros, consulte Logging.

Painéis de monitoramento e geração de registros

Com uma única página no console do Google Cloud , é mais fácil visualizar e interpretar métricas e registros relacionados ao Cloud TPU. O repositório do GitHub monitoring-debugging contém um conjunto de scripts e arquivos de configuração que usam o Terraform para implantar automaticamente painéis que contêm todas as métricas e registros relacionados ao Cloud TPU. Para configurar esses painéis no projeto do Google Cloud , consulte Painéis de monitoramento e geração de registros.

Como criar perfis de cargas de trabalho em VMs de TPU

A criação de perfil permite otimizar o desempenho do treinamento do modelo em VMs de TPU. Para criar o perfil do modelo, use o TensorBoard e o plug-in do TensorBoard para TPU. Para saber como criar perfis de carga de trabalho, consulte Criar um perfil do modelo em VMs de TPU.

Para saber como usar o TensorBoard com um dos frameworks disponíveis, consulte os seguintes documentos: