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

31

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

    
por jlupolt 19.01.2010 / 13:43

4 respostas

35

Depois de vasculhar a documentação (com base nas outras respostas aqui), este é o processo que acabei usando:

  1. Capture o registro ETW do problema

    A maneira mais fácil de fazer isso é usar o Gravador de desempenho do Windows . Eu não tenho certeza quando apareceu pela primeira vez, mas parece ser construído em versões recentes do Windows. Defina o perfil para CPU usage .

    ou,usandoumpromptdecomandoelevado,navegueatéapastaqueocontémeuseaferramentadelinhadecomandoxperf:

    xperf-onbase+interrupt+dpc

    NotequevocêprecisaráfecharoProcessMonitorouqualqueroutroaplicativoqueuseoETWouvocêreceberáoseguinteerro:xperf:error:NTKernelLogger:Cannotcreateafilewhenthatfilealreadyexists.(0xb7).

  2. Pararderastrear/salvarolog

    xperf-dinterrupt_trace.etl
  3. AbraorastreioemWindowsPerformanceAnalyzer(partedoWindowsPerformanceToolkit);algunslugaresmencionamousodexperfview.

  4. ExpandirComputation->CPUUsage(Sampled)->DPCandISRUsagebyModule,Stack,cliquecomobotãodireitoeaddgraphtoanalysisview

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

por 19.08.2014 / 22:45
4

Se você pode manipular ferramentas de sistema de baixo nível,

Windows Performance Analyzer (WPA)

Windows Performance Analyzer (WPA) is a set of performance monitoring tools used to produce in-depth performance profiles of Microsoft Windows operating systems and applications.

Depois de aprender como usar o xperf; confira;

The DPC/ISR Action

The DPC/ISR action produces a text report that summarizes the various metrics regarding DPCs and ISRs. The usage for this action is:

Copy Code -a dpcisr [-dpc -isr -summary -interval [n] -bucket [n] -range T1 T2 ]

Option

Description

dpc

Show statistics for DPC only

isr

Show statistics for ISR only

summary

Show summary report

interval [dt]

Show usage report for intervals of dt, default is 1 second

bucket [dt]

Show histogram for intervals of dt, default is 2 seconds

range T1 T2

Show delays between T1 and T2

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

and ISR. If no report type is specified, default is to print all three kinds of report.

    
por 09.06.2011 / 05:25
2

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

link

    
por 15.05.2013 / 22:33
0

Dê uma olhada no Windows Process Explorer:

link

Isso deve ajudar.

    
por 19.01.2010 / 14:28