マルチコアCPUではプロセス・スレッドが実行されるCPUコアはOSのスケジューラに依存し、状況に応じて別のCPUコア上にコンテキストが移動することがあります。LinuxではCPUアフィニティを設定することで、このような移動を抑制し特定のCPUコア上でのみプロセス・スレッドを(主にパフォーマンス上の問題で)実行することが出来ます。 CPUアフィニティとは そのスレッドが実行を許可されている論理CPUの集合です。CPUアフィニティはビットマスクで表されます。 例としてCPU0は 0x00000001, CPU1は 0x00000002, CPU0,1,3の集合は 0x0000000b になります。 CPU0は実体はどのCPUコアかというのは cat /proc/cpuinfo で確認できます。 コマンドによるCPUアフィニティの設定方法 tasksetというコマンドでプロセスのCPUアフィニテ