Gerenciador de Tarefas do Windows 2012 versus Process Explorer, uso de CPU diferente, por quê?

2

Temos um servidor com 4 CPUs Intel Xeon E5-4617 (6 núcleos). Estamos usando isso como um servidor de banco de dados.

O gerenciador de tarefas do Windows 2012 não exibe nenhum uso da CPU em dois processadores. Process Explorer mostra o uso da CPU em todos os processadores, mas baixa utilização da CPU em 3 núcleos do 4º processador.

Qual deles está correto?

Edite: Screenshots , usando o y-cruncher (gerador Pi multi-core).

    
por user208090 04.02.2014 / 18:51

2 respostas

1

Which one is correct?

Ambos, provavelmente.

Apesar da impressão que você obtém dos gráficos, o uso de recursos não é feito de forma contínua, mas em intervalos discretos. Então, o que está acontecendo aqui é que, em um ponto no tempo, o Gerenciador de Tarefas pesquisa as CPUs para uso e obtém sua resposta. Algum número de milissegundos depois, o Process Explorer pesquisa o uso da CPU e obtém uma resposta ligeiramente diferente.

Isso faz sentido, porque é a pesquisa em um tempo ligeiramente diferente, e ambas as medições são provavelmente precisas, apenas para intervalos ligeiramente diferentes. Podemos não notar uma diferença de tempo de 10 milissegundos, mas é muito tempo para o computador - um processador de 3.8Ghz pode processar 38 milhões de operações nesses 10 milissegundos que não conseguimos perceber. Aqui está uma postagem do blog ServerFault relacionada a como os intervalos de sondagem podem levar você a conclusões erradas .

Na verdade, não me surpreenderia se a razão pela qual o Process Explorer está vendo uma atividade menor que o Gerenciador de Tarefas não é, pois o Process Explorer está medindo o uso da CPU gerado pelo Task Explorer - a atividade de pesquisa, os cálculos relacionados e gráficos não são gratuitos e consomem recursos da CPU para processar.

Então, você tem duas coisas acontecendo aqui:

  1. Você está medindo intervalos de tempo diferentes, o que pode ser imperceptivelmente pequeno para nós, mas na verdade são períodos relativamente longos de tempo para um computador, no qual muita atividade pode ocorrer, gerando medições diferentes e precisas.

  2. A medição de recursos consome recursos, que podem ser detectados pelos quais o aplicativo recebe dados em segundo lugar. Muito parecido com o efeito do observador na mecânica quântica - o ato de observar ou medir um evento muda o evento - o ato de medir sua utilização de recursos utiliza os mesmos recursos que você está tentando medir.

por 05.02.2014 / 08:13
0

Com base nos novos screnshots, minha resposta sobre o caso geral não é aplicável.

Seu problema é que o Gerenciador de Tarefas não está executando métricas em duas de suas CPUs / 12 de seus núcleos. Esses gráficos estão vazios / em branco e não indicam CPUs completamente inativas. Claro, eu não tenho certeza porque está fazendo isso (mesmo que claramente tenha o número de CPUs na saída de texto), ou o que você faria para corrigir isso, mas isso explicaria a grande diferença que você está vendo.

Portanto, as Informações do sistema estão corretas, já que elas parecem estar realmente representando graficamente e medindo o uso da CPU em todas as suas CPUs e núcleos de CPU.

    
por 07.02.2014 / 00:31