Otimizando configurações do Criador de Perfil

A janela Ferramentas de Diagnóstico e o Criador de Perfil de Desempenho no Visual Studio têm muitas configurações diferentes que afetam o desempenho geral das ferramentas. Alterar algumas configurações pode fazer com que a análise seja executada rapidamente ou causar tempos de espera adicionais durante o processamento de resultados nas ferramentas. Abaixo, temos um resumo de algumas configurações e o respectivo impacto no desempenho.

Configurações de Símbolo

As configurações de símbolos encontradas nas opções do depurador (Depurar > Opções > Símbolos ou Ferramentas > Opções > Depuração > Símbolos) têm impacto significativo sobre quanto tempo leva para gerar resultados nas ferramentas. Habilitar servidores de símbolo ou usar o _NT_SYMBOL_PATH faz com que o criador de perfil solicite símbolos para cada módulo carregado em um relatório. Atualmente, o criador de perfil sempre carrega automaticamente todos os símbolos, independentemente da preferência de carregamento automático dos símbolos.

Symbol loading page

O progresso do carregamento de símbolo pode ser visto na janela Saída no título Ferramentas de Diagnóstico.

Symbol loading progress

Depois de baixados, os símbolos são armazenados em cache, o que acelerará a análise futura, mas ainda exigirá o carregamento e a análise dos arquivos. Se o carregamento de símbolo estiver deixando a análise mais lenta, tente desativar os servidores de símbolos e desmarcar o cache de símbolos. Use símbolos criados localmente para seu projeto.

Mostrar Código Externo

Muitas das ferramentas dentro do Criador de Perfil de Desempenho e da janela de Ferramentas de Diagnóstico têm um conceito de código de usuário versus código externo. Código do usuário é qualquer código criado pela solução aberta ou pelo espaço de trabalho aberto. Código externo é qualquer outra coisa. Ao manter a configuração Mostrar código externo desabilitada ou Mostrar apenas meu código habilitada, você permite que as ferramentas agreguem código externo a um único quadro de primeiro nível, reduzindo consideravelmente a quantidade de processamento necessária para mostrar resultados. Isso permite que os usuários vejam o que foi chamado no código externo que criou a lentidão, mantendo os dados a serem processados em um nível mínimo. Quando possível, deixe Mostrar código externo desabilitada e verifique se você tem a solução ou o espaço de trabalho aberto para a sessão de diagnóstico que está analisando.

Duração do rastreamento

A criação de perfil de durações menores resulta em menos dados, o que é mais rápido de analisar. Normalmente, recomendamos que você tente limitar rastreamentos a não mais do que cinco minutos de dados de desempenho. Algumas ferramentas, como Uso da CPU, permitem pausar a coleta de dados enquanto a ferramenta está em execução para que seja possível limitar a quantidade de dados coletados do cenário que você tem interesse em analisar.

Frequência de amostragem

Determinadas ferramentas, como Uso da CPU e Alocação de Objetos NET, permitem ajustar a frequência de amostragem. Aumentar a frequência de amostragem permite medir com mais precisão, mas aumenta a quantidade de dados gerados. Normalmente, é melhor deixar essa configuração na taxa padrão, a menos que um problema específico esteja sendo investigado.

Diag Hub Properties Page

Diag Hub Properties Page

Definir a pasta de coleta

O criador de perfil do Visual Studio usa um diretório de rascunho de coleta para armazenar rastreamentos de desempenho antes que eles sejam salvos ou descartados. Por padrão, o criador de perfil usa o diretório temporário. No entanto, você pode especificar um diretório de rascunho diferente abrindo primeiro a janela Ferramentas de Diagnóstico (Depurar>Windows>Mostrar Ferramentas de Diagnóstico) e, em seguida, escolhendo Selecionar Ferramentas>Configurações>Geral>Diretório Temporário.

Screenshot of profiler scratch directory.