Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este documento descreve os métodos de coleta de dados que as ferramentas dentro do Visual Studio Performance Profiler utilizam.
Amostragem
A amostragem coleta dados estatísticos sobre o trabalho realizado por um aplicativo durante a criação de perfil e é um bom ponto de partida para encontrar áreas para acelerar seu aplicativo. Em intervalos especificados, o método Sampling coleta informações sobre as funções que estão sendo executadas em seu aplicativo. A recolha de dados é feita através da recolha de informação sobre a aplicação a intervalos regulares ou frequência de amostragem, como cada milissegundo. Os dados recolhidos são analisados para criar um modelo de onde o tempo foi gasto na aplicação. Se você precisar de medições precisas dos tempos de chamada ou estiver procurando por problemas de desempenho em um aplicativo pela primeira vez, então você pode querer usar a amostragem.
A amostragem tem menos precisão no número de chamadas, mas é de baixo custo para o criador de perfil e tem pouco efeito na execução do aplicativo que está sendo perfilado. As ferramentas no Performance Profiler que utilizam o método de amostragem incluem a ferramenta Uso da CPU .
Depois de concluir a coleta de dados, a ferramenta Uso da CPU analisa os dados capturados e exibe o relatório.
Rastreio
O rastreamento fornece melhores informações sobre a frequência com que um método foi executado. Se você precisar de medidas precisas de números de chamada, use o rastreamento. O rastreamento pode ter um impacto maior no desempenho do seu código durante a coleta, mas a amostragem tem apenas uma pequena sobrecarga. Além disso, o rastreamento pode ser mais lento para analisar porque leva mais tempo para visualizar os dados após a coleta.
Instrumentation
A perfilagem de instrumentação recolhe informações detalhadas sobre o trabalho executado por uma aplicação durante uma execução de perfilagem. A coleta de dados é feita por ferramentas que injetam código em um arquivo binário que captura informações de tempo ou usando ganchos de retorno de chamada para coletar e emitir informações exatas de tempo e contagem de chamadas enquanto um aplicativo é executado. O método de instrumentação tem uma alta sobrecarga quando comparado às abordagens baseadas em amostragem. As ferramentas no Performance Profiler que usam instrumentação incluem as ferramentas de instrumentação e a ferramenta de alocação de objetos .NET .
Amostragem versus instrumentação
O valor da amostragem é que tem menos despesas gerais e, por esta razão, é mais provável que seja estatisticamente representativo da aplicação em execução na produção. O valor do perfil de instrumentação é que se pode obter contagens exatas de chamadas sobre quantas vezes as suas funções foram chamadas. Isso fornece informações muito mais detalhadas do que a amostragem normal, o que pode distorcer o tempo gasto em alguns cenários. Por exemplo, funções que não fazem muito, mas são chamadas com frequência, aparecerão mais do que em um cenário do mundo real.
Com a instrumentação, cada chamada de função selecionada em seu aplicativo é anotada e instrumentada para que, quando for invocada, seja adicionada ao rastreamento junto com informações sobre o chamador. Com a amostragem, a pilha de chamadas atual em execução é sondada da CPU em um intervalo e, em seguida, cada quadro é adicionado ao rastreamento.