限制 Linux 中进程的相对(而非绝对)处理器消耗

限制 Linux 中进程的相对(而非绝对)处理器消耗

Linux 中强制执行系统策略来限制相对的单个进程的 CPU 使用率?也就是说,在四核机器上,我永远不希望一个进程同时使用超过 2 个 CPU,即使该进程创建了更多线程。我不是想要一个绝对的时间限制,而不是一个相对的限制,这样一项任务就无法控制整个机器。这也不同于 renice,后者允许一个进程使用所有资源,但如果其他进程也需要这些资源,那么就礼貌地让开。

限制是常见的资源限制工具,但是它不允许这样的 CPU 限制。它可以限制每个用户的进程数,或者绝对 CPU 时间,而不是限制单个进程的最大活动线程数。

我找到了一些用户级工具,例如CPU限制,但不是系统级工具或设置。Linux 中是否存在这样的标准资源控制器(如果重要的话,Red Hat Enterprise 也是如此)。如果施加了这样的限制,用户如何识别它?

答案1

你要找的单词是“affinity”。man tasket。这可能会满足你的要求。

相关内容