Linux プロセッサ アフィニティを使用して、2 つのコアを user1 専用にし、2 つのコアを user2 専用にするにはどうすればよいでしょうか?

Linux プロセッサ アフィニティを使用して、2 つのコアを user1 専用にし、2 つのコアを user2 専用にするにはどうすればよいでしょうか?

最初は、2 つのコア (4 つのスレッド) を 1 つの Java PID に割り当て、2 つのコア (4 つのスレッド) を別の Java PID に割り当てたいと考えていました。しかし、これらのプログラムの不安定さから、最終的にはクラッシュして再起動することになるのではないかと考えています。私には mc5 と mc26 という 2 人のユーザーがいます。どちらも 4 つのコア (8 つのスレッド) で 1 つのプロセスを実行しています。これにより、パフォーマンスの問題が発生し、わずかな遅延が発生します。mc5 に 2 つのコア (スレッド 0、1、2、3) を使用させたいです。mc26 に 2 つのコア (スレッド 4、5、6、7) を使用させたいです。どうすればこれが可能でしょうか。誰か例を挙げてもらえますか。

答え1

これは機能しますか? すでに実行中のプロセスで機能するはずです:

taskset -cp 0-3 `pid of mc5`
taskset -cp 4-7 `pid of mc26`

関連情報