通常、Linux プロセスは特定のコアに明示的に固定されていません。通常、そうする理由はありませんが、可能です。
taskset
を使用してプロセス アフィニティを管理できます または、フィールド 'psr' で ps を使用して、現時点でどの CPU でどのプロセスが実行されているかを表示します。
プロセス 27395 の現在の CPU アフィニティを確認してください:
$ ps -o psr 27395
PSR
6
プロセス 27395 のアフィニティ リストを確認してください:
$ taskset -pc 27395
pid 27395's current affinity list: 0-7
プロセス 27395 のアフィニティを CPU 3 に設定
$ taskset -pc 3 27395
pid 27395's current affinity list: 0-7
pid 27395's new affinity list: 3
プロセス 27395 の現在の CPU アフィニティを確認してください:
$ ps -o psr 27395
PSR
3
プロセスが CPU に固定されているかどうかを確認するには、プロセス識別子をループして taskset -p
を実行します。 それらに対して:
$ 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