如何限制用户在 Linux 上随时可以使用的 CPU 核心数量?

如何限制用户在 Linux 上随时可以使用的 CPU 核心数量?

我想限制特定用户在任何时刻可以使用的 CPU 核心数量。我该如何在 Linux 上执行此操作?

答案1

据我所知,除了使用 docker 作为虚拟环境并将整个容器限制为选定的核心之外,您不能这样做。例子:

docker run --cpuset-cpus="0"

大多数时候,您不应该被迫使用这样的解决方案。如果其中一位用户导致问题,请使用/etc/security/limits.conf添加条目:

username    -       priority        19

这应该使所有用户进程都以优先级 19(最低)运行,并且即使消耗大量 CPU,也不应该干扰计算机上的其他程序。

另外,如果这是单个进程(而不是用户)的问题,那么您可以使用nicecpulimit/cgroups

相关内容