XProf: análise de desempenho do acelerador

O XProf é uma ferramenta de criação de perfis e análise de performance para machine learning.

Recursos

  • Informações de perfil de alta qualidade com base em eventos e contadores de hardware e metadados do compilador.
  • Baixa sobrecarga de coleta, geralmente <1% em TPUs e <5% em GPUs durante o período de criação de perfil.
  • Amplo conjunto de ferramentas que oferecem uma compreensão profunda da sua carga de trabalho:
    • Página de visão geral: confira uma visão agregada de nível superior de como foi o desempenho do seu modelo durante uma execução de perfil, incluindo o uso de recursos de hardware.
    • Visualizador de rastreamento: visualize um cronograma detalhado dos eventos que ocorreram e qual parte do sistema os executou (por exemplo, CPU, TPU ou GPU.
    • Visualizador de gráficos: visualize a estrutura do gráfico do seu programa XLA. Ele mostra o gráfico de operações de alto nível (HLO, na sigla em inglês).
    • Visualizador de memória: visualize o uso de memória durante o ciclo de vida do programa e confira os detalhes do conteúdo da memória no ponto de pico de uso de memória.
    • Perfil de memória: visualize o uso dinâmico de memória dos seus aceleradores durante a execução do programa.
    • Perfil de operações HLO: entenda a performance do hardware para diferentes categorias de operações de alto nível (HLO) executadas pelo seu programa.
    • Estatísticas de operações do HLO: confira as estatísticas de performance das operações do High Level Optimizer (HLO) executadas pelo seu programa e identifique as operações mais demoradas no seu gráfico do HLO.
    • Estatísticas de operações do framework: confira as estatísticas de desempenho de operações no nível do framework (por exemplo, JAX, TensorFlow ou PyTorch/XLA) executados no host e no acelerador.
    • Análise de roofline: confira um modelo de desempenho visual intuitivo que mostra as limitações de hardware inerentes que afetam a performance do seu programa, indicando se ele está limitado pela memória ou pela computação.
    • Estatísticas de megascale: analise o desempenho da comunicação entre frações de cargas de trabalho que abrangem várias frações de TPU e se comunicam pela rede de data center (DCN).
    • Estatísticas do kernel da GPU: confira estatísticas de desempenho e a operação de framework de origem para cada kernel acelerado por GPU no seu programa.

Primeiros passos

Para instruções de instalação, consulte o Guia de início rápido do XProf.

Se você usa o Google Cloud para executar suas cargas de trabalho, recomendamos a ferramenta xprofiler. Ela oferece uma experiência simplificada de coleta e visualização de perfis usando VMs que executam o XProf.

Para conferir uma demonstração rápida dos recursos do XProf, teste o notebook de demonstração.

Integração com o TensorBoard

Historicamente, a única maneira de instalar e usar o XProf era com o Tensorboard. Esse era chamado de perfil do plug-in do TensorBoard. Algumas documentações mais antigas ainda podem usar esse termo. Essa integração agora é opcional: pense no Tensorboard como um contêiner para o conjunto de ferramentas XProf, que também pode ser instalado e usado de forma independente, com comportamento idêntico.