Tengo acceso a un nodo de 8 núcleos de un clúster de Linux. Cuando inicie sesión en el nodo, puedo ver una lista de procesadores que utilizan este comando:
more /proc/cpuinfo
En mi nodo de 8 núcleos, los procesadores están numerados del 0 al 7. Cada procesador es una CPU Intel Xeon (E5430 @ 2.66GHz).
Ahora supongamos que llamo al programa foo
con algunos argumentos args
:
foo args
El programa foo
tarda mucho tiempo en ejecutarse (horas o días, por ejemplo). Habiendo llamado foo
, ¿es posible determinar el procesador particular (es decir, 0 a 7) en el que se foo
está ejecutando? El top
programa me muestra la identificación del proceso e información similar, pero no veo el número del procesador . ¿Esta información está disponible?
foo
a dos procesadores diferentes. Cuando llamo foo
una vez, se ejecuta con %CPU
muy cerca del 100% (según top
). Pero cuando llamo foo
por segunda vez, ambos foo
procesos se ejecutan de manera tal que %CPU
para ambos procesos suman menos del 100% (generalmente alrededor del 45% para cada foo
proceso). Para mí, esto sugiere que las dos llamadas a foo
se ejecutan en el mismo procesador (a pesar de que hay ocho procesadores disponibles); Me gustaría verificar que este sea el caso.