¿Hay algún comando en Linux para averiguar, dado un proceso, qué procesador está ejecutando el proceso? Estoy interesado en averiguar la CPU ocupada y el tiempo de inactividad de la CPU de ese procesador.
26
Puede usar el ps
comando para consultar y mostrar el procesador activo. Por ejemplo, puede ejecutar:
$ ps -aF
UID PID PPID C SZ RSS PSR STIME TTY TIME CMD
root 1 0 0 5971 1764 1 Sep15 ? 00:00:01 /sbin/init
ubuntu 28903 2975 0 3826 1208 0 09:36 pts/0 00:00:00 ps -aF
La PSR
columna muestra que se init
está ejecutando en el procesador 1 y se ps
está ejecutando en el procesador 0. Consulte la página de manual de ps (1) para obtener más detalles sobre cómo personalizar los campos que se muestran.
Puede configurar una herramienta gráfica htop
para mostrar el procesador activo actual. Además, htop
tiene un gráfico de visualización de carga por CPU, que puede ser lo que estás buscando. Vea, por ejemplo, la siguiente captura de pantalla de http://htop.sourceforge.net/ .
Finalmente, puede usar la taskset
herramienta para forzar afinidad a una CPU en particular.
Hay muchas formas de averiguarlo. htop, arriba, ps.
htop
url: http://htop.sourceforge.net/
parte superior
url: http://gitorious.org/procps
Aquí hay un ejemplo con la última columna
P
PD
PSR es el CÓDIGO para mostrar la identificación del procesador. Puede usar la opción de formato como
ps -o pid,psr
o simplemente hacerps -eF
fuente
Cito los contenidos de man ps:
psr le dirá al procesador en qué proceso o en qué proceso se está ejecutando. pcpu le dirá el porcentaje de tiempo de CPU que consumió el proceso.
Estilo BSD:
fuente