怎样在 Linux 中使用 Ananicy 控制应用程序优先级

Auto Nice Daemon 很古老,手动更改软件优先级很烦人。 难道没有一种现代方法来控制每个程序应该使用多少资源吗? 见面 空虚 (另一个 Auto NICe 守护进程),一个现代的 auto-nice 解决方案,您可以使用它为您的软件创建配置文件,以优先考虑您关心的应用程序。 让我们看看你怎样做到这一点。

安装

Ananicy 需要 systemd 才能工作,因此它与阳光下的每个发行版都不兼容。 要在 Ubuntu、Mint、Debian 和兼容发行版上安装它,请使用:

如果您使用的是 Arch、Manjaro 或其他类似的发行版,您可以使用以下命令安装它:

Ananicy 还依赖于 schedtool,所以如果它还没有安装,请确保也添加它。 您可以分别在兼容 Debian 和兼容 Arch 的发行版上使用:

设置好所有内容后,启用其守护进程使其始终处于活动状态并监视您的应用程序:

要启动实际应用程序,请使用:

如果您使用的是低功耗系统,其中每个软件都在争夺资源,那么它可能会立即开始感觉响应速度更快。

检查预设

Ananicy 预先捆绑了许多流行应用程序的规则。 要查看它们,请启动您最喜欢的终端并访问 Ananicy 的规则目录:

Ananicy 控制应用程序预设

每个应用程序的规则存储在单独的文件中。 为了 example,要查看流行的 qBittorrent 文件共享客户端的预设规则,您可以使用:

您可以将它们用作您自己的规则的基础。

添加您自己的规则

要为应用程序创建规则,您应该知道其进程名称。 幸运的是,在 Linux 上,这通常与应用程序的名称相同。 您可以使用 top 命令来验证进程名称。

找到占用您计算机的进程并记下其名称。 让我们使用 timeshift 应用程序作为我们的 example.

在 Ananicy 的规则目录中创建一个新的文本文件。 最好使用应用程序的名称以便将来参考。 确保您的文件以“.rules”结尾,以便 Ananicy 将其识别为规则文件。

Ananicy Control 应用程序创建自定义规则

为软件创建规则的最简单方法是仅说明其名称并对其类型进行分类。 Ananicy 带有游戏、多媒体应用程序、文档编辑器等的预定义类型。要查看它们,请使用以下命令:

Ananicy Control 应用程序转储类型

每个都带有不同的 nice、ionice、cgroup 和其他值,但建议您不要只调整应用程序的 nice 值。 但是,对于对存储进行大量读写的应用程序,还值得使用 ioclass 参数定义其输入-输出优先级。

考虑到所有这些,我们已准备好制定我们自己的自定义规则:

Ananicy Control Apps 自定义时移规则

上面的规则:

  • 说明应用程序的名称
  • 定义其类型
  • 与预设相比,为其分配不同的优先级
  • 将其输入/输出优先级设置为空闲

理论上,您只需要说明应用程序的名称,其他一切都是可选的。 实际上,如果您只这样做,Ananicy 只会承认该应用程序的存在,而不会尝试控制它。 为此,您至少必须定义其类型。

它的类型带有不同的预定义好的和输入/输出值,您可能会找到一个与您想要限制软件的方式相匹配的类型。 但是,有时,就像我们使用 timeshift 的情况一样,您可能想要进一步调整它们。 如果它与 Ananicy 的类型预设中包含的值不同,那么您将必须明确说明所需的 nice 或 ioclass 值。

BG_CPUIO 我们选择的预设与我们的应用程序的类型相匹配,因为作为备份解决方案,它通常在后台运行,但在执行连续读取和写入时会占用大量处理周期。 但是,BG_CPUIO 预设会为其分配尽可能低的 nice 和 ionice 值,这可能会使备份过程花费很长时间。 因此,我们将 nice 值增加到 17,将 ioclass 增加到尽力而为,以在一定程度上加快进程。

我们来看看另一个 example. 蝙蝠侠:阿卡姆城的“小丑嘉年华”DLC 是我最喜欢的游戏之一。 然而,它的动作依赖于流畅的运动,每当另一个软件在后台运行时,我都能感觉到它在 Linux Mint 中卡顿。 因此,对于这个,我想做相反的事情——增加它的优先级。

Ananicy Control Apps 蝙蝠侠在行动

通过使用 Proton 通过 Steam 运行游戏后检查 Linux Mint 的系统监视器,我们可以看到其进程名称为“BatmanAC.exe”。 为了用 Ananicy 给它一个很好的提升,我像以前一样创建了一个名为“BatmanAC_ody.rules”的新规则。 但是,在这种情况下,其内容是:

Ananicy Control Apps 自定义蝙蝠侠规则

这已经足够了,因为“游戏”类型带有“-5”很好的值,将应用程序优先于其他所有内容。 因此,您不必自己明确说明好值或制定更复杂的规则。

稍后重新启动,作为良好的衡量标准,Ananicy 将处于活动状态,随时准备采取行动来调整您的软件的优先级。 您在下面的屏幕截图中看到的 BatmanAC.exe 进程的值是自动分配的,无需任何用户干预。

Ananicy Control Apps 蝙蝠侠系统监视器

请注意,您不必对所有软件都执行此操作,但控制最苛刻的后台进程并增强交互性更强的进程可以使使用计算机的感觉大不相同。 它可以最大限度地减少口吃,并提供更流畅的体验。

您是否已经在使用 Ananicy 或其他类似的解决方案,让您可以控制怎样将计算机资源分配给您的应用程序? 您是否正在手动更新您的软件? 在下面的评测部分告诉我们。