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

次の方法で、利用可能な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何もする必要はありません。

関連情報