Passo a passo do relatório de criação de perfil do Debugger - Amazon SageMaker

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Passo a passo do relatório de criação de perfil do Debugger

Esta seção o orienta no relatório de criação de perfil do Depurador, seção por seção. O relatório de criação de perfil é gerado baseado nas regras integradas para monitoramento e criação de perfil. O relatório mostra gráficos de resultados somente para as regras que encontraram problemas.

Importante

No relatório, os gráficos e as recomendações são fornecidos para fins informativos e não são definitivos. Você é responsável por fazer sua própria avaliação independente das informações.

Resumo do trabalho de treinamento

No início do relatório, o Debugger fornece um resumo do seu trabalho de treinamento. Nesta seção, você pode ter uma visão geral das durações e dos registros de data e hora em diferentes fases do treinamento.

Um exemplo do relatório de criação de perfil do Debugger

A tabela do resumo contém as seguintes informações:

  • start_time — A hora exata em que o trabalho de treinamento começou.

  • end_time — A hora exata em que o trabalho de treinamento foi concluído.

  • job_duration_in_seconds — O tempo total de treinamento do horário_inicial até o horário_final.

  • training_loop_start — A hora exata em que a primeira etapa da primeira época começou.

  • training_loop_start — A hora exata em que a primeira etapa da primeira época começou.

  • training_loop_duration_in_seconds — O tempo total entre a hora de início do ciclo de treinamento e a hora de término do ciclo de treinamento.

  • initialization_in_seconds — Tempo gasto na inicialização do trabalho de treinamento. A fase de inicialização abrange o período entre o start_time e o training_loop_start time. O tempo de inicialização é gasto na compilação do script de treinamento, na inicialização do script de treinamento, na criação e na inicialização do modelo, na inicialização de EC2 instâncias e no download dos dados de treinamento.

  • finalization_in_seconds — Tempo gasto na finalização do trabalho de treinamento, como finalizar o treinamento do modelo, atualizar os artefatos do modelo e fechar as instâncias. EC2 A fase de finalização abrange o período desde o momento training_loop_end ao end_time.

  • inicialização (%) — A porcentagem de tempo gasto na inicialização sobre o total de job_duration_in_seconds.

  • ciclo de treinamento (%) — A porcentagem de tempo gasto no ciclo de treinamento sobre o total de job_duration_in_seconds.

  • finalização (%) — A porcentagem de tempo gasto na finalização sobre o total de job_duration_in_seconds.

Estatísticas de uso do sistema

Nesta seção, você pode ver uma visão geral das estatísticas de utilização do sistema.

Um exemplo do relatório de criação de perfil do Debugger

O relatório de criação de perfil inclui as seguintes informações:

  • — Lista o nome dos nós. Se estiver usando treinamento distribuído em vários nós (várias EC2 instâncias), os nomes dos nós estão no formato dealgo-n.

  • métrica — As métricas do sistema coletadas pelo Debugger:CPU,, CPU memóriaGPU, GPU memória, E/S e métricas de rede.

  • unidade – A unidade das métricas do sistema.

  • max — O valor máximo de cada métrica do sistema.

  • p99 — O 99º percentil de cada utilização do sistema.

  • p95 — O 95º percentil de cada utilização do sistema.

  • p50 — O 50º percentil (médio) de cada utilização do sistema.

  • min — O valor mínimo de cada métrica do sistema.

Resumo das métricas do framework

Nesta seção, os gráficos circulares a seguir mostram o detalhamento das operações da estrutura em CPUs GPUs e.

Um exemplo do relatório de criação de perfil do Debugger

Cada um dos gráficos circulares analisa as métricas da framework coletadas em vários aspectos, da seguinte forma:

  • Proporção entre a EVAL faseTRAIN/e outras — Mostra a proporção entre as durações de tempo gastas em diferentes fases de treinamento.

  • Razão entre passe para frente e para trás — Mostra a proporção entre as durações de tempo gastas no passe para frente e para trás no ciclo de treinamento.

  • Razão entre GPU operadoresCPU/— Mostra a proporção entre o tempo gasto em operadores em execução em CPU ouGPU, como operadores convolucionais.

  • Métricas gerais registradas na framework — Mostra a proporção entre o tempo gasto nas principais métricas da framework, como carregamento de dados, avanço e retrocesso.

Visão geral: CPU Operadores

Esta seção fornece informações detalhadas sobre os CPU operadores. A tabela mostra a porcentagem do tempo e o tempo cumulativo absoluto gasto nos CPU operadores chamados com mais frequência.

Um exemplo do relatório de criação de perfil do Debugger

Visão geral: GPU operadores

Esta seção fornece informações detalhadas sobre os GPU operadores. A tabela mostra a porcentagem do tempo e o tempo cumulativo absoluto gasto nos GPU operadores chamados com mais frequência.

Um exemplo do relatório de criação de perfil do Debugger

Resumo das regras

Nesta seção, o Debugger agrega todos os resultados da avaliação de regras, análises, descrições de regras e sugestões.

Um exemplo do relatório de criação de perfil do Debugger

Analisando o ciclo de treinamento — durações das etapas

Nesta seção, você pode encontrar estatísticas detalhadas das durações das etapas em cada GPU núcleo de cada nó. O depurador avalia valores médios, máximos, p99, p95, p50 e mínimos das durações das etapas e avalia os valores discrepantes das etapas. O histograma a seguir mostra as durações das etapas capturadas em diferentes nós de trabalho e. GPUs Você pode ativar ou desativar o histograma de cada trabalhador escolhendo as legendas do lado direito. Você pode verificar se há algo específico GPU que está causando discrepâncias na duração da etapa.

Um exemplo do relatório de criação de perfil do Debugger

GPUanálise de utilização

Esta seção mostra as estatísticas detalhadas sobre a utilização GPU do núcleo com base na owGPUUtilization regra L. Também resume as estatísticas de GPU utilização, média, p95 e p5 para determinar se o trabalho de treinamento está subutilizado. GPUs

Tamanho do lote

Esta seção mostra as estatísticas detalhadas da CPU utilização total, das GPU utilizações individuais e da área ocupada pela GPU memória. A BatchSize regra determina se você precisa alterar o tamanho do lote para melhor utilizar GPUs o. Você pode verificar se o tamanho do lote é muito pequeno, resultando em subutilização, ou muito grande, causando superutilização e problemas de falta de memória. No gráfico, as caixas mostram os intervalos percentuais p25 e p75 (preenchidos com roxo escuro e amarelo brilhante, respectivamente) da mediana (p50), e as barras de erro mostram o percentil 5 para o limite inferior e o percentil 95 para o limite superior.

Um exemplo do relatório de criação de perfil do Debugger

CPUgargalos

Nesta seção, você pode detalhar os CPU gargalos que a CPUBottleneck regra detectou em seu trabalho de treinamento. A regra verifica se a CPU utilização está acima cpu_threshold (90% por padrão) e também se a GPU utilização está abaixo gpu_threshold (10% por padrão).

Um exemplo do relatório de criação de perfil do Debugger

Os gráficos circulares mostram as seguintes informações:

  • Baixo GPU uso causado por CPU gargalos — Mostra a proporção de pontos de dados entre aqueles com GPU utilização acima e abaixo do limite e aqueles que correspondem aos critérios de gargalo. CPU

  • Proporção entre a EVAL faseTRAIN/e outras — Mostra a proporção entre as durações de tempo gastas em diferentes fases de treinamento.

  • Razão entre passe para frente e para trás — Mostra a proporção entre as durações de tempo gastas no passe para frente e para trás no ciclo de treinamento.

  • Razão entre GPU operadoresCPU/— Mostra a proporção entre as durações de tempo gastas em GPUs e CPUs pelos operadores Python, como processos de carregador de dados e operadores de passagem para frente e para trás.

  • Métricas gerais registradas na estrutura — Mostra as principais métricas da estrutura e a proporção entre as durações de tempo gastas nas métricas.

Problemas de E/S

Nesta seção, você pode encontrar um resumo dos problemas de E/S. A regra avalia o tempo de espera de E/S e as taxas de GPU utilização e monitora se o tempo gasto nas solicitações de E/S excede uma porcentagem limite do tempo total de treinamento. Isso pode indicar gargalos de E/S que GPUs aguardam a chegada dos dados do armazenamento.

Balanceamento de carga em treinamento múltiplo GPU

Nesta seção, você pode identificar problemas de balanceamento da carga de trabalho em 1. GPUs

Um exemplo do relatório de criação de perfil do Debugger

GPUanálise de memória

Nesta seção, você pode analisar a utilização da GPU memória coletada pela GPUMemoryIncrease regra. No gráfico, as caixas mostram os intervalos percentuais p25 e p75 (preenchidos com roxo escuro e amarelo brilhante, respectivamente) da mediana (p50), e as barras de erro mostram o percentil 5 para o limite inferior e o percentil 95 para o limite superior.

Um exemplo do relatório de criação de perfil do Debugger