J'ai accès à un nœud à 8 cœurs d'un cluster Linux. Une fois connecté au nœud, je peux voir une liste de processeurs à l'aide de cette commande:
more /proc/cpuinfo
Dans mon nœud à 8 cœurs, les processeurs sont numérotés de 0 à 7. Chaque processeur est un processeur Intel Xeon (E5430 @ 2,66 GHz).
Supposons maintenant que j'appelle le programme foo
avec quelques arguments args
:
foo args
Le programme foo
est long à exécuter (heures ou jours, par exemple). Après avoir appelé foo
, est-il possible de déterminer le processeur particulier (c.-à-d. 0 à 7) sur lequel foo
fonctionne? Le top
programme me montre l'ID du processus et des informations similaires, mais je ne vois pas le numéro du processeur . Ces informations sont-elles disponibles?
foo
à deux processeurs différents. Quand j'appelle foo
une fois, ça tourne à %CPU
très près de 100% (selon top
). Mais quand j'appelle foo
une seconde fois, les deux foo
processus sont exécutés de telle sorte que le %CPU
pour les deux procédés somme à moins de 100% (habituellement d' environ 45% pour chaque foo
processus). Pour moi, cela suggère que les deux appels à foo
s'exécutent sur le même processeur (même s'il existe huit processeurs disponibles); Je voudrais vérifier que c'est le cas.