How to Change I/O Scheduler in Linux

A BFQ egy összetett ütemező, jobban teljesít lassú SSD/HDD illetve low-latency alkalmazások esetén, mint audió/videó szerkesztés, játékok, desktop alkalmazások használata során. Valójában az interaktív feladatok esetén előnyben részesíti a legalacsonyabb késleltetést és nem a max. adatátvitelre törekszik.

Kernel I/O ütemezők felsorolása
# cat /sys/block/sd*/queue/scheduler
# [mq-deadline] none

Nincs betöltve, akkor
# modprobe kyber-iosched
# modprobe bfq-iosched

I/O ütemezők felsorolása:
# cat /sys/block/sd*/queue/scheduler
[mq-deadline] kyber bfq none
[mq-deadline] kyber bfq none
[mq-deadline] kyber bfq none
[mq-deadline] kyber bfq none

Online tesztelésre
# echo bfq > /sys/block/sdb/queue/scheduler

Ellenőrzés
# cat /sys/block/sd*/queue/scheduler
[mq-deadline] kyber bfq none
mq-deadline kyber [bfq] none
[mq-deadline] kyber bfq none
[mq-deadline] kyber bfq none

Állandó beállítása:
# nano /etc/udev/rules.d/60-ioschedulers.rules
add lines
# set scheduler for NVMe
ACTION=="add|change", KERNEL=="nvme[0-9]n[0-9]", ATTR{queue/scheduler}="none"
# set scheduler for SSD and eMMC
ACTION=="add|change", KERNEL=="sd[a-z]*|mmcblk[0-9]*", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="bfq"
# set scheduler for rotating disks
ACTION=="add|change", KERNEL=="sd[a-z]*", ATTR{queue/rotational}=="1", ATTR{queue/scheduler}="bfq"

Jelen esetben a lassabb SSD-t, a HDD-t és a külső SSD-t is szeretném megváltoztatni. Alapértelmezetten a nem forgó merevlemezek esetén az [mq-deadline] az ajánlott, de dektop felhasználóként egyértelműen nem voltam vele elégedett.

 

Leave a reply

©2016 idStudio & SMThemes.com

Legjobb tárhely ajánlatok