Como posso descobrir o que está causando interrupções no Windows?


37

Ocasionalmente, encontro servidores (Windows 2003 e 2008) com alto% de tempo de interrupção do processador. Existe uma maneira de ver qual programa ou dispositivo está causando as interrupções?

Respostas:


41

Depois de pesquisar na documentação (com base nas outras respostas aqui), esse é o processo que acabei usando:

  1. Capturar o log ETW do problema

    A maneira mais fácil de fazer isso é usando o Windows Performance Recorder . Não tenho certeza de quando ele apareceu pela primeira vez, mas parece estar embutido nas versões recentes do Windows. Defina o perfil para CPU usage.

    Gravador de desempenho do Windows

    ou, usando um prompt de comando elevado, navegue até a pasta que o contém e use a ferramenta de linha de comando xperf:

    xperf -on base+interrupt+dpc
    

    Observe que você precisará fechar o Process Monitor ou qualquer outro aplicativo que use ETW ou obterá o seguinte erro: xperf: error: NT Kernel Logger: Cannot create a file when that file already exists. (0xb7).

  2. Parar rastreamento / salvar o log

    xperf -d interrupt_trace.etl
    
  3. Abra o rastreamento em Windows Performance Analyzer(parte do Windows Performance Toolkit); alguns lugares mencionam o uso xperfview.

  4. Expanda Computation-> CPU Usage (Sampled)-> DPC and ISR Usage by Module, Stack, clique com o botão direito eadd graph to analysis view

    Windows Performance Analyzer

  5. Isso apontou diretamente para o motorista em questão. Nesse caso, o HDAudBus.sys está usando uma constante de 10,82% da minha CPU através de interrupções, que é exatamente o que o Process Explorer estava me mostrando.


Agradável! Muito bem feito.
Michal Sokolowski

Bem explicado. No meu caso, acabou por ser audiodg.exe. Assim que eu o matei, os DPCs foram quase nada. Eu encontrei detalhes adicionais sobre como resolver esse aqui: windows-exe-errors.com/...
CJBS

Uma correção - você precisa expandir Computação-> Uso da CPU (amostrado) - "Uso da CPU" é ambíguo.
Bruce Dawson

No meu caso, eu tinha 10% de DPC no Gerenciador de Tarefas, mas a maioria era ntoskrnl.exe no rastreamento. No entanto, a expansão da pilha desse módulo revelou um serviço de terceiros "RfeCo10X64.sys", que fazia parte do Killer Performance Suite. Eu desinstalei esse software (algum sistema de priorização de rede que estava fazendo o oposto do que ele tentou) e meu problema foi resolvido.
Chris

Funciona no Windows 10? Alguma outra ferramenta disponível? Não quero instalar arquivos GiB de todo o pacote.
Unknown123

4

Se você pode lidar com ferramentas de sistema de baixo nível;

Windows Performance Analyzer (WPA)

O Windows Performance Analyzer (WPA) é um conjunto de ferramentas de monitoramento de desempenho usadas para produzir perfis de desempenho detalhados dos sistemas operacionais e aplicativos Microsoft Windows.

Depois de aprender a usar o xperf; Confira;

A ação DPC / ISR

A ação DPC / ISR produz um relatório de texto que resume as várias métricas relacionadas aos DPCs e ISRs. O uso para esta ação é:

Copiar código -a dpcisr [-dpc -isr -summary -interval [n] -bucket [n] -range T1 T2]

Opção

Descrição

dpc

Mostrar estatísticas apenas para DPC

isr

Mostrar estatísticas apenas para ISR

resumo

Mostrar relatório resumido

intervalo [dt]

Mostrar relatório de uso para intervalos de dt, o padrão é 1 segundo

balde [dt]

Mostrar histograma para intervalos de dt, o padrão é 2 segundos

intervalo T1 T2

Mostrar atrasos entre T1 e T2

If no data type is specified, default is to show report for both DPC

e ISR. Se nenhum tipo de relatório for especificado, o padrão é imprimir todos os três tipos de relatório.


3

Aqui está o melhor artigo que encontrei sobre como fazer isso, com tutoriais, capturas de tela e links para download das ferramentas relevantes:

http://www.msfn.org/board/topic/140263-how-to-get-the-cause-of-high-cpu-usage-by-dpc-interrupt/


1
Bem-vindo à falha do servidor! Geralmente, gostamos de respostas no site para poder se manter por conta própria - os links são ótimos, mas se esse link quebrar, a resposta deve ter informações suficientes para continuar sendo útil. Considere editar sua resposta para incluir mais detalhes. Veja o FAQ para mais informações.
Slm


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.