Upload
fernando-henrique
View
212
Download
2
Embed Size (px)
Citation preview
Visual Studio Summit 2014
Fernando Henrique Inocêncio Borba Ferreira
Profiling de Aplicações .NET
Microsoft Premier Field Engineer
Mestre em Sistemas de Informação
Microsoft Most Valuable Professional – Visual C#
Visual Studio Summit 2014
Monitoramento de aplicações .NET com o objetivo de identificar
problemas de performance em sua execução.
Profiling de Aplicações .NET
Visual Studio Summit 2014
Performance?
Demora?Lentidão?
Consome mais recursos do que o necessário?
E a velocidade?
“Leva uma hora pra executar”?
“Tá demorando”?
“Tá executando até agora”?
Muito lento?
Por onde começar?
Visual Studio Summit 2014
Profiling?
• Monitorar a execução de uma aplicação.
• Medir o tempo gasto por cada método ou o uso de memória por
toda a sua execução.
• O profiling de aplicações .NET é bastante complexo.
Visual Studio Summit 2014
Tipos de Profiling
• CPU Sampling
– Monitora o consumo de CPU da aplicação.
• Instrumentation
– Avalia a quantidade de chamadas a uma função e o tempo consumido.
• .NET Memory Allocation
– Rastreia o consumo de memória gerenciada.
• Resource contention data
– Concorrência entre threads.
Visual Studio Summit 2014
CPU Sampling
• Aplicação é monitorada para identificar qual método está no topo
do stack (pilha de execução).
• Coleta de dados estatísticos sobre o trabalho que é executado.
• Tem pouco impacto sobre a execução da aplicação.
Visual Studio Summit 2014
CPU Sampling
• Hot Paths!!!
– Inclusive Samples
• Indica um alto custo na execução do método.
– Exclusive Samples
• Indica um alto custo no código existente no corpo do método.
Análise dos dados
Visual Studio Summit 2014
CPU SamplingAnálise dos dados
Incl
usi
ve S
am
ple
[
Exc
lusi
ve S
am
ple
]
Visual Studio Summit 2014
CPU Sampling
• Function details
– Navegação por dentro da pilha de execução.
– Reproduz a cadeia de chamadas até o ponto com maior custo de performance.
Análise dos dados
Visual Studio Summit 2014
Profiling via Command Prompt
• Execução de profiling via linha de comando.
• Coleta de dados em servidores que não contém o Visual Studio.
• Pacote standalone de instalação dos components de profiling.
Visual Studio Summit 2014
Vantagens
• Identificar blocos com problemas de performance.
• Focar em pontos que merecem atenção.
• Comparar abordagens alternativas.
• Visualizar a melhora da aplicação.
Visual Studio Summit 2014
MS. Fernando Henrique Inocêncio Borba Ferreira
Microsoft Most Valuable Professional – Visual C#
Microsoft Premier Field Engineer
http://ferhenriquef.com/
@FerHenrique