Last active
December 10, 2024 01:17
-
-
Save denji/9602ee2f7a47297b217e3cd3d9dbfe27 to your computer and use it in GitHub Desktop.
#udev #linux /etc/udev/rules.d/60-ioschedulers.rules ("udevadm control --reload-rules && udevadm trigger")
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# /etc/udev/rules.d/60-ioschedulers.rules | |
# https://github.com/pop-os/default-settings/blob/master_jammy/lib/udev/rules.d/60-block-pop.rules | |
# https://wiki.archlinux.org/index.php/Improving_performance | |
# https://wiki.archlinux.org/title/improving_performance#Input/output_schedulers | |
# https://gist.github.com/Th3Whit3Wolf/2f24b29183be7f8e9c0b05115aefb693 | |
# https://support.purestorage.com/Solutions/Linux/Linux_Reference/Linux_Recommended_Settings | |
# https://www.kernel.org/doc/html/latest/block/index.html | |
# https://wiki.ubuntu.com/Kernel/Reference/IOSchedulers | |
# https://forum.endeavouros.com/t/ssd-scheduler/36109/4 | |
# https://github.com/CachyOS/CachyOS-Settings/blob/master/usr/lib/udev/rules.d/60-ioschedulers.rules | |
# grep "" /sys/block/*/queue/scheduler | |
#echo kyber | sudo tee /sys/block/loop*/queue/scheduler | |
# udevadm control --reload; udevadm trigger | |
# udevadm control --reload-rules; udevadm trigger | |
# udevadm monitor | |
# loop default bfq | |
#ACTION=="add|change", KERNEL=="loop[0-9]*", ATTR{queue/scheduler}="none" | |
# ACTION=="add|change", KERNEL=="loop[0-9]*", ATTR{queue/scheduler}="bfq" | |
# ACTION=="add|change", KERNEL=="loop[0-9]*", ATTR{queue/scheduler}="noop" | |
# ACTION=="add|change", KERNEL=="loop[0-9]*", ATTR{queue/scheduler}="mq-deadline" | |
# ACTION=="add|change", KERNEL=="loop[0-9]*", ATTR{queue/scheduler}="kyber" | |
# set scheduler for NVMe | |
#ACTION=="add|change", KERNEL=="nvme[0-9]n[0-9]", ATTR{queue/scheduler}="none" | |
#ACTION=="add|change", KERNEL=="nvme[0-9]*", ATTR{queue/scheduler}="none" | |
# ACTION=="add|change", KERNEL=="nvme[0-9]n[0-9]", ATTR{queue/scheduler}="kyber" | |
# ACTION=="add|change", KERNEL=="nvme[0-9]*", ATTR{queue/scheduler}="kyber" | |
# set scheduler for SSD and eMMC | |
#ACTION=="add|change", KERNEL=="sd[a-z]|mmcblk[0-9]*", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="bfq" | |
# ACTION=="add|change", KERNEL=="sd[a-z]|mmcblk[0-9]*", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="mq-deadline" | |
# ACTION=="add|change", KERNEL=="sd[a-z]|mmcblk[0-9]*", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="kyber" | |
# set scheduler for rotating disks | |
#ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="1", ATTR{queue/scheduler}="mq-deadline" | |
# ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="1", ATTR{queue/scheduler}="bfq" | |
# ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="1", ATTR{queue/scheduler}="bfq-sq" | |
# ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="1", ATTR{queue/scheduler}="bfq-mq" | |
## -- Pop_OS ---------------------------------------------------------------------------------------- | |
# BFQ is recommended for slow storage such as rotational block devices and SD cards. | |
ACTION=="add|change", SUBSYSTEM=="block", ATTR{queue/rotational}=="1", ATTR{queue/scheduler}="bfq" | |
ACTION=="add|change", SUBSYSTEM=="block", KERNEL=="mmcblk?", ATTR{queue/scheduler}="bfq" | |
# Kyber is recommended for faster storage such as NVME and SATA SSDs. | |
ACTION=="add|change", SUBSYSTEM=="block", ATTR{queue/rotational}=="0", KERNEL=="nvme?n?", ATTR{queue/scheduler}="kyber" | |
ACTION=="add|change", SUBSYSTEM=="block", ATTR{queue/rotational}=="0", KERNEL=="sd?", ATTR{queue/scheduler}="kyber" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment