Configurar o TensorBoard

Neste documento, descrevemos como configurar e executar o TensorBoard para visualizar e analisar o desempenho do programa no Cloud TPU.

Visão geral

No TensorBoard, há um conjunto de ferramentas projetadas para apresentar visualmente os dados do TensorFlow. Quando o TensorBoard é usado para monitoramento, é possível identificar gargalos no processamento e receber sugestões para melhorar o desempenho.

Pré-requisitos

Nas instruções a seguir, pressupomos que:

  • você já tenha executado o cloud-tpu-profiler 1.12 para criar o script capture-tpu-profile;
  • o Cloud TPU já tenha sido configurado no Cloud Shell e que você esteja pronto para executar o aplicativo de treinamento.

Se você não tiver um modelo pronto para treinar, comece com o tutorial MNIST.

Executar o TensorBoard

As instruções a seguir presumem que você tenha configurado o Cloud TPU em um Cloud Shell.

Quando você executou o ctpu up para criar a VM do Compute Engine e o Cloud TPU, a ferramenta configurou automaticamente o encaminhamento de porta para o ambiente do Cloud Shell para disponibilizar o TensorBoard. Você precisa executar o TensorBoard em um novo Cloud Shell, não no shell em que está sendo executado seu aplicativo de treinamento.

Siga estas etapas para executar o TensorBoard em um Cloud Shell separado:

  1. Abra um segundo Cloud Shell para capturar dados de criação de perfil para o TensorBoard.

  2. No segundo Cloud Shell, execute o ctpu up para definir algumas variáveis de ambiente necessárias no novo shell:

    $ ctpu up

    Com isso, uma resposta semelhante à seguinte será retornada:

    2018/08/02 12:53:12 VM already running.
    2018/08/02 12:53:12 TPU already running.
    About to ssh (with port forwarding enabled -- see docs for details)...
    

  3. Crie uma variável de ambiente com o endereço do intervalo do Cloud Storage para ser usada nesta instância do Cloud Shell:

    (vm)$ export STORAGE_BUCKET=gs://[YOUR STORAGE BUCKET NAME]
    

Executar o modelo e capturar a resposta do monitoramento

Há duas maneiras de ver as informações do trace do TensorBoard, com o Visualizador de traces estático ou o Visualizador de traces por streaming. O Visualizador de traces estático está limitado a 1 milhão de eventos por Cloud TPU. Se você precisar acessar mais eventos, use o Visualizador de traces por streaming. Ambas as configurações são mostradas abaixo.

  1. No primeiro Cloud Shell, execute o aplicativo de treinamento de modelos do TensorFlow. Por exemplo, se estiver usando o modelo MNIST TPU, execute mnist_tpu.py conforme descrito no tutorial de MNIST.

  2. No segundo Cloud Shell, inicie o TensorBoard especificando o tipo de visualizador de traces a ser usado:

    • Para o Visualizador de traces estático, execute o comando a seguir, substituindo OUTPUT-FILE pelo nome do arquivo em que checkpoints, resumos e a resposta do TensorBoard são armazenados durante o treinamento do modelo:

      (vm)$ tensorboard --logdir=${STORAGE_BUCKET}/[OUTPUT-FILE] &
      
    • Para o Visualizador de traces por streaming, copie o endereço IP do host do TPU no Console do Google Cloud Platform antes de executar o comando do TensorBoard.

      1. Na barra lateral de navegação do Console do GCP, selecione Compute Engine -> TPUs e copie o endereço IP interno referente ao Cloud TPU.

      2. Execute o comando a seguir para usar o TensorBoard com o Visualizador de traces por streaming, substituindo OUTPUT-FILE pelo nome do arquivo em que checkpoints, resumos e a resposta do TensorBoard são armazenados durante o treinamento do modelo:

      (vm)$ tensorboard --logdir=${STORAGE_BUCKET}/[OUTPUT-FILE] \
        --master_tpu_unsecure_channel=[YOUR TPU IP] &
      
  3. No segundo Cloud Shell, inicie o aplicativo de captura de perfil:

    (vm)$ capture_tpu_profile --tpu=[YOUR TPU NAME] --logdir=${STORAGE_BUCKET}/output
  4. Clique no botão Visualização da Web no Cloud Shell e abra a porta 8080 para ver a resposta do TensorBoard.

A seguir

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…