Linux でプロセスの相対的な (絶対的ではない) プロセッサ消費を制限する

Linux でプロセスの相対的な (絶対的ではない) プロセッサ消費を制限する

Linuxでシステムポリシーを強制して制限する標準的な方法は何ですか?相対的単一プロセスのCPU使用率?つまり、クアッドコアマシンでは、プロセスが複数のスレッドを作成する場合でも、プロセスが一度に2つ以上のCPUを使用することは決して望ましくありません。ない絶対的な時間制限ではなく、1 つのタスクがマシンを独占できないようにする相対的な制限が必要です。これは、プロセスがすべてのリソースを使用できるようにしながら、他のプロセスもリソースを必要とする場合は丁重に退くことを許可する renice とも異なります。

制限は、通常のリソース制限ツールですが、このような CPU 制限は許可しません。ユーザーごとのプロセス数や絶対 CPU 時間を制限できますが、単一プロセスのアクティブ スレッドの最大数を制限できません。

ユーザーレベルのツールをいくつか見つけました。CPU制限ただし、システム レベルのツールや設定ではありません。Linux (Red Hat Enterprise など) には、このような標準リソース コントローラーは存在しますか? このような制限が課せられている場合、ユーザーはそれをどのように識別するのでしょうか?

答え1

あなたが探している単語は「affinity」です。man taskset。それがあなたが望むことを行うかもしれません。

関連情報