How to change IO Sheduler for a persist?

Hello! I’m trying to switch IO Sheduler,but have no luck.
According thisdocumentation, i was trying to change file /lib/udev/rules.d/60-ssd-scheduler.rules, but there is no such file. I found file 60-io-scheduler.rules

# Set optimal IO schedulers for HDD and SSD

ACTION!="add", GOTO="scheduler_end"
SUBSYSTEM!="block", GOTO="scheduler_end"

# Do not change scheduler if `elevator` cmdline parameter is set
IMPORT{cmdline}="elevator"
ENV{elevator}=="?*", GOTO="scheduler_end"

# Determine if BLK-MQ is enabled
TEST=="%S%p/mq", ENV{.IS_MQ}="1"

# MQ: BFQ scheduler for HDD
ENV{.IS_MQ}=="1", ATTR{queue/rotational}!="0", ATTR{queue/scheduler}="bfq"
# MQ: deadline scheduler for SSD
ENV{.IS_MQ}=="1", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="mq-deadline"

# Non-MQ: CFQ scheduler for HDD
ENV{.IS_MQ}!="1", ATTR{queue/rotational}!="0", ATTR{queue/scheduler}="cfq"
# Non-MQ: deadline scheduler for SSD
ENV{.IS_MQ}!="1", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="deadline"

LABEL="scheduler_end"

and changed mq-deadline to kyber. But on next reboot, i still had mq-deadline as default IO Sheduler. Also i added an additional parameter to kernel at bootloader


elevator=kyber 

but also no luck.
Could anybody help me?

There is newer documentation:

“If you have fast SCSI devices (for example, SSDs) instead of SCSI hard disks attached to your system, consider switching to blk-mq for SCSI. This is done using the kernel command line option scsi_mod.use_blk_mq=1.”

https://doc.opensuse.org/documentation/leap/tuning/html/book.sle.tuning/cha-tuning-io.html#cha-tuning-io-scsimq

Thanks, combinations of changing 60-io-scheduler.rules file and adding kernel option helps!

Thanks for your advice!

Hi
The scsi_mod.use_blk_mq=1 boot option has been the default in Tumbleweed for some time…