Linuxでユーザーが一度に使用できるCPUコアの数を制限する方法は?

Linuxでユーザーが一度に使用できるCPUコアの数を制限する方法は?

特定のユーザーが同時に使用できるCPUコアの数を制限したいと思います。 Linuxでこれを行うにはどうすればよいですか?

答え1

私が知っている限り、dockerを仮想環境として使用し、コンテナ全体を選択したコアに制限する以外はこれを行うことはできません。例:

docker run --cpuset-cpus="0"

ほとんどの場合、このようなソリューションを強制的に使用しないでください。これらのユーザーの1人が問題を引き起こしている場合は、次のように/etc/security/limits.confアイテムを追加してください。

username    -       priority        19

これにより、すべてのユーザープロセスが優先順位19(最低)で実行され、CPUが大量に消費されてもコンピュータ上の他のプログラムを妨げることはできません。

また、これが(ユーザーではなく)単一プロセスの問題である場合、niceまたはcpulimit/を使用できます。cgroups

関連情報