起動時にLinux上のプロセスのCPUアフィニティを設定したいと思います。
sched_setaffinityやtasksetのようなメソッドがありますが、それらにはプロセスのprocessidが必要です。プロセスがコアで開始されたように移行の可能性がありますが、sched_setaffinity / tasksetを使用した後、別のコアに移行されました。
私がやりたいのは、特定のコアで最初から新しいプロセスを開始することです。
起動時にLinux上のプロセスのCPUアフィニティを設定したいと思います。
sched_setaffinityやtasksetのようなメソッドがありますが、それらにはプロセスのprocessidが必要です。プロセスがコアで開始されたように移行の可能性がありますが、sched_setaffinity / tasksetを使用した後、別のコアに移行されました。
私がやりたいのは、特定のコアで最初から新しいプロセスを開始することです。
taskset
実行中のプロセスのアフィニティを設定するため、または特定のアフィニティを持つプロセスを起動するために使用できます。
あらすじ
taskset [options] mask command [arg]...
taskset [options] -p [mask] pid
以下のコマンドは、CPU 1 と 2 (または 0 と 1) で Google Chrome ブラウザを起動します。マスクは 0×00000003 で、コマンドは「google-chrome」です。
taskset 0×00000003 google-chrome