如何在 Ubuntu 17.10 内核 4.13 中启用 Kyber 调度程序?

如何在 Ubuntu 17.10 内核 4.13 中启用 Kyber 调度程序?

我想知道如何在默认内核为 4.13 的 Ubuntu 17.10 中启用 Kyber 调度程序。我使用以下说明启用了 bfq如何启用和使用BFQ调度器?。当我导航到 NVMe 驱动器时,我只看到 bfq。

cat /sys/block/nvme0n1/queue/scheduler
[noop] bfq

答案1

您可以通过以下方式临时启用三个可用的调度程序:

  • 须藤 modprobe bfq
  • sudo modprobe mq-截止日期
  • sudo modprobe kyber-iosched

您可以在 中看到可用的模块/lib/modules/<your kernel>/kernel/block

要在启动时启用这些模块,您可以添加以下行/etc/modules-load.d/modules.conf(或在同一目录中创建另一个 .conf):

bfq
mq-deadline
kyber-iosched

答案2

我使用的是 Fedora 28 和内核 4.17,但我认为它的工作方式是相同的。

只需将其设置为“kyber”,它就会自动加载 kyber-iosched 模块。

有些人使用脚本等,但我喜欢 udev 规则。这是我的/etc/udev/rules.d/iosched.rules

ACTION=="add|change", SUBSYSTEM=="block", KERNEL=="sd?", ATTR{queue/scheduler}="bfq"
ACTION=="add|change", SUBSYSTEM=="block", KERNEL=="nvme?n?", ATTR{queue/scheduler}="kyber", ATTR{queue/io_poll_delay}="0"

我仍在尝试这一点io_poll_delay,你不需要它做任何事情。

相关内容