Unter normalen Umständen sind Linux-Prozesse nicht explizit an einen bestimmten Kern gebunden, es gibt normalerweise keinen Grund dafür, aber es ist möglich.
Sie können die Prozessaffinität mit taskset
verwalten oder mit ps mit dem Feld 'psr' sehen, welcher Prozess gerade auf welcher CPU läuft.
Überprüfen Sie die aktuelle CPU-Affinität von Prozess 27395:
$ ps -o psr 27395
PSR
6
Prüfen Sie die Affinitätsliste von Prozess 27395:
$ taskset -pc 27395
pid 27395's current affinity list: 0-7
Affinität von Prozess 27395 auf CPU 3 setzen
$ taskset -pc 3 27395
pid 27395's current affinity list: 0-7
pid 27395's new affinity list: 3
Überprüfen Sie die aktuelle CPU-Affinität von Prozess 27395:
$ ps -o psr 27395
PSR
3
Um zu überprüfen, ob ein Prozess an eine CPU gebunden ist, können Sie Ihre Prozess-IDs durchlaufen und taskset -p
ausführen gegen sie:
$ for pid in $(ps -a -o pid=); do taskset -pc $pid 2>/dev/null; done
pid 1803's current affinity list: 0-7
pid 1812's current affinity list: 0-7
pid 1986's current affinity list: 0-7
pid 2027's current affinity list: 0-7
pid 2075's current affinity list: 0-7
pid 2083's current affinity list: 0-7
pid 2122's current affinity list: 0-7
pid 2180's current affinity list: 0-7
pid 2269's current affinity list: 0-7
pid 2289's current affinity list: 0-7
pid 2291's current affinity list: 0-7
pid 2295's current affinity list: 0-7
pid 2300's current affinity list: 0-7
pid 2302's current affinity list: 0-7
pid 3872's current affinity list: 0-7
pid 4339's current affinity list: 0-7
pid 7301's current affinity list: 0-7
pid 7302's current affinity list: 0-7
pid 7309's current affinity list: 0-7
pid 13972's current affinity list: 0-7