De vez en cuando me encuentro con servidores (Windows 2003 y 2008) con un alto porcentaje de interrupción del procesador. ¿Hay alguna manera de ver qué programa o dispositivo está causando las interrupciones?
fuente
De vez en cuando me encuentro con servidores (Windows 2003 y 2008) con un alto porcentaje de interrupción del procesador. ¿Hay alguna manera de ver qué programa o dispositivo está causando las interrupciones?
Después de examinar la documentación (basada en las otras respuestas aquí), este es el proceso que terminé usando:
Capture el registro ETW del problema.
La forma más fácil de hacerlo es usar el Grabador de rendimiento de Windows . No estoy seguro de cuándo apareció por primera vez, pero parece estar integrado en versiones recientes de Windows. Establece el perfil en CPU usage.

o, usando un símbolo del sistema elevado, navegue a la carpeta que lo contiene y use la herramienta de línea de comandos xperf:
xperf -on base+interrupt+dpc
Tenga en cuenta que deberá cerrar Process Monitor o cualquier otra aplicación que use ETW o recibirá el siguiente error: xperf: error: NT Kernel Logger: Cannot create a file when that file already exists. (0xb7).
Dejar de rastrear / guardar el registro
xperf -d interrupt_trace.etl
Abra el seguimiento en Windows Performance Analyzer(parte de Windows Performance Toolkit); Algunos lugares mencionan usar en su xperfviewlugar.
Expanda Computation-> CPU Usage (Sampled)-> DPC and ISR Usage by Module, Stack, haga clic derecho yadd graph to analysis view

Esto apuntó directamente al conductor en cuestión. En este caso, HDAudBus.sys está utilizando un 10.82% constante de mi CPU a través de interrupciones, que es exactamente lo que Process Explorer me estaba mostrando.
Si puede manejar herramientas de sistema de bajo nivel;
Después de aprender a usar xperf; revisa;
fuente
Aquí está el mejor artículo que he encontrado sobre cómo hacer esto, con tutoriales, capturas de pantalla y enlaces de descarga a las herramientas relevantes:
http://www.msfn.org/board/topic/140263-how-to-get-the-cause-of-high-cpu-usage-by-dpc-interrupt/
fuente
Echa un vistazo al Explorador de procesos de Windows:
http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx
Eso debería ayudar.
fuente
Dos excelentes herramientas son LatencyMon y DPC Latency Checker .
fuente