在 Linux 中设置 CPU 核心利用率限制

在 Linux 中设置 CPU 核心利用率限制

我在具有 4GB RAM 的 Surface 3 上运行 Linux Mint。如果所有核心的利用率超过 90%,设备就会冻结并需要重新启动。如何设置核心限制?我尝试使用niceand cgroups(with cpu.shares 800) 和cpulimit(with -l 290),但某些程序(例如 Jetbrains IntelliJ)仍然挂起并强制重新启动。

答案1

有一些程序可以管理它,例如 cpulimit & 或者当然也可以使用 cgroup 来完成。

控制组相对于 cpulimit 的优点是限制应用于一组进程。例子 :

sudo cgcreate -g cpu:/cpulimited
cgset -r cpu.shares=512 cpulimited

然后在您使用的程序上使用受控命令行

sudo cgexec -g cpu:cpulimited /path/programthateatressourcesusually 

taskset如果它仍然像这样挂起并且您有一个多代码CPU,您可以尝试强制进程在我认为带有linux-utils的指定核心上运行。

如果您对该程序仍有问题,您可以联系开发团队。

相关内容