デフォルトのカーネル4.13を使用してUbuntu 17.10でKyberスケジューラを有効にする方法を知りたいです。次のガイドラインに従ってbfqを有効にしました。BFQスケジューラを有効にして使用する方法は?。 NVMeドライブに移動すると、bfqのみが表示されます。
cat /sys/block/nvme0n1/queue/scheduler
[noop] bfq
答え1
次の方法で、利用可能な3つのスケジューラを一時的に有効にできます。
- sudo 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
何もする必要はありません。