Con el Explorador de procesos de Sysinternals, ¿hay una columna que se pueda usar para indicar en qué CPU se está ejecutando un proceso? Si no hay columna, ¿hay alguna otra manera?
windows
cpu
process-explorer
rory.ap
fuente
fuente
Respuestas:
Solicitado en 2005 :
Ninguna respuesta.
Solicitado en 2007 :
Ninguna respuesta.
Similar discutido en 2013 :
Sinopsis básica: no se puede hacer.
Los hilos son los que se envían a los núcleos para su procesamiento, no los procesos. La mayoría de los procesos modernos tienen múltiples hilos.
Si establece manualmente la afinidad por un proceso, todos los hilos del proceso deben adherirse a un único procesador. Como lo configuró manualmente, debe saber en qué CPU está. ;)
Pero si no especifica, el sistema operativo y el hardware de procesamiento subyacente controlarán los subprocesos, y saltarían entre los procesadores a una velocidad que sería imposible de observar y muy probablemente imprecisa para cuando se muestre. tú.
Quizás revise estas preguntas de SU para más información:
Además, desde StackOverflow:
Ahora, si escribió el programa, podría usar el GetCurrentProcessorNumber , que informa el procesador actual en uso por el hilo desde el que se llamó a la función.
El uso de esto le permitirá hacer estimaciones sobre el uso del procesador por parte de sus hilos, ya que nunca puede estar seguro de dónde estarán los hilos de un ciclo al siguiente (de nuevo, a menos que establezca la afinidad a propósito).
Más información:
fuente
Esto se puede hacer capturando un rastro de xperf y abriéndolo con el Analizador de rendimiento de Windows (WPA.exe) del Kit de herramientas de rendimiento de Windows, aquí puede agregar una columna CPU para ver qué CPU (Core) está ejecutando el proceso:
fuente