Use perfmon para determinar se existe uma perda de memória
Se o desempenho do Windows estiver diminuindo com o passar do tempo e você suspeitar que uma perda de memória possa estar envolvida, use o Monitor de Desempenho do Windows para investigar se há uma perda de memória. Esse processo não informará qual é a origem da perda, nem se é o modo de usuário ou o modo kernel.
Comece iniciando o Monitor de Desempenho. Para abrir o Monitor de Desempenho, use um dos seguintes procedimentos:
- Abra o Menu Iniciar, procure Monitor de Desempenho e clique no resultado
- Use o
Windows Key + R
atalho de teclado para abrir o comando Executar, digiteperfmon
e clique em OK para abrir.
Adicionar contadores
Depois de abrir o Monitor de Desempenho, adicione os contadores a seguir ao gráfico do Monitor de Desempenho principal. Clique com o botão direito do mouse no Monitor de Desempenho em Ferramentas de Monitoramento e selecione Propriedades.
Memória-->Bytes de Pool Não Pagináveis
Memória-->Bytes de Pool Pagináveis
Arquivo de Paginação-->% de Uso
Defina a duração para captura de atividade suficiente
Para capturar um gráfico da perda com o passar do tempo, defina o tempo de Amostra a cada como 600 segundos para medir o valor a cada dez minutos. Defina Duração para captura de atividade suficiente. Por exemplo, para defini-lo como 24 horas, o valor seria: 60*60*24 = 86,400
Também convém registrar os dados em um arquivo para exame posterior.
Iniciar o aplicativo e monitorar
Inicie o aplicativo ou teste que você acredita estar causando a perda. Deixe o aplicativo ou o teste ser executado sem interrupções por algum tempo; não use o computador de destino durante esse período. As perdas costumam ser lentas e podem demorar horas para serem detectadas. Aguarde algumas horas para decidir se uma perda ocorreu.
Monitore os contadores do Monitor de Desempenho. Depois que o teste tiver iniciado, os valores de contador serão alterados rapidamente, e pode demorar um pouco para que os valores dos pools de memória alcancem um estado estável.
As perdas de memória no modo de usuário estão sempre localizadas no pool paginável e fazem com que o contador Bytes de Pool Pagináveis e o contador Uso do arquivo de paginação aumentem constantemente com o passar do tempo. As perdas de memória em modo kernel normalmente excluem o pool não paginado, fazendo com que o contador Bytes de Pool Não Pagináveis aumente, embora a memória paginável também possa ser afetada. Às vezes, esses contadores podem mostrar falsos positivos porque um aplicativo está armazenando dados em cache.