Obteniendo una estadística de CPU por hilo

10

¿Cómo obtengo el uso actual de la CPU para cada subproceso en una aplicación específica? ¿Es posible obtener esa información de alguna parte o usando alguna herramienta?

dabest1
fuente

Respuestas:

8

Para una respuesta rápida, use el Explorador de procesos de SysInternal . Haga doble clic en un proceso para abrir el diálogo de detalles. la pestaña de subprocesos ofrece una lista ordenable de todos los subprocesos, incluido el cambio de contexto delta y el tiempo de CPU.

Ricardo
fuente
Estaba usando Process Explorer antes, pero no vi la columna de la CPU allí porque era demasiado estrecha y solo la flecha de clasificación era visible como el encabezado de la columna.
dabest1
7

Perfmon (Monitor de rendimiento) debería darle los detalles que desea.

Lo siguiente supone Windows 2000, XP o Server 2003. No lo he comprobado pero creo que el monitor de rendimiento es un poco diferente en Vista, Windows 7 y Server 2008.

Para ejecutar el Monitor de rendimiento, vaya a Inicio> Panel de control> Herramientas administrativas> Rendimiento

Para agregar un gráfico para cada hilo de una aplicación, haga clic derecho en el gráfico y elija Propiedades. Es posible que desee eliminar cualquiera de los valores predeterminados que vienen para darle un gráfico más limpio.

Haga clic en el botón "Agregar ..." y asegúrese de que "Usar contadores de computadora local" esté marcado (a menos que quiera monitorear un servidor diferente, en cuyo caso, continúe y elija esa opción).

En "Objeto de rendimiento", elija "Hilo"

Seleccione el contador "% de tiempo de procesador" y luego seleccione todos los hilos que desea monitorear (control + clic para seleccionar múltiples). Haga clic en "Agregar" y luego en "Cerrar".

De vuelta en las propiedades, puede personalizar el gráfico como lo desee, asignando colores, patrones, etc. Haga clic en Aceptar.

Es posible que deba iniciar el gráfico, si lo hace, luego, al hacer clic en el signo rojo STOP para que no esté habilitado, se iniciará el gráfico.

Mark Henderson
fuente
Hice +1, excepto el comentario de WMI al comienzo, ya que no tiene mucho que ver con el resto de la publicación. Lo mencionado también funciona bastante similar para Vista y 2008. Finalmente, también puede iniciar Perfmon ejecutando perfmon.msc
DougN
Ugh, lo siento, confundí mis términos. Quise decir perfmon. Lo arreglaré ahora.
Mark Henderson el
1

Monitor de proceso (sysinternals)

Creo que ProcessMonitor by Sysinternals (recientemente comprado por Microsoft) probablemente funcionaría.

Process Monitor es una herramienta de monitoreo avanzada para Windows que muestra el sistema de archivos en tiempo real, el registro y la actividad de procesos / hilos. Combina las características de dos utilidades de Sysinternals heredadas, Filemon y Regmon, y agrega una extensa lista de mejoras que incluyen filtrado rico y no destructivo, propiedades de eventos integrales como ID de sesión y nombres de usuario, información de proceso confiable, pilas de subprocesos completos con soporte de símbolos integrado. para cada operación, registro simultáneo en un archivo y mucho más. Sus características únicas y potentes harán que Process Monitor sea una utilidad central en el kit de herramientas de solución de problemas y búsqueda de malware de su sistema.

Aqui esta el link:

http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx

KPWINC
fuente
Gracias por tu sugerencia. Su respuesta es correcta, pero lo que me ayudó a encontrar el uso de CPU por hilo en Process Explorer fue la respuesta que seleccioné por Richard.
dabest1
0

puede usar el monitor de rendimiento de Windows incorporado, simplemente escriba perfmon al inicio y ejecútelo. una vez en perfmon, haga clic en el signo más, seleccione el proceso, elija su proceso, luego seleccione lo que desea ver. ¡volver a lo básico!

Nasa
fuente