我想知道如何在默认内核为 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
,你不需要它做任何事情。