Pada umumnya, kernel Linux menggunakan mq-deadline
sebagai scheduler I/O standar. Untuk mendapatkan performa lebih, ada scheduler bernama BFQ
. Bagaimana cara menggunakan scheduler BFQ
di Linux?
Berkenalan Dengan BFQ Scheduler
Adalah BFQ alias Budget Fair Queueing, sebuah salah satu scheduler di Linux yang menawarkan responsivitas tinggi dan low latency. Dengan BFQ, kegiatan copy/paste berkas berasa cepat, meskipun kamu menggunakan HDD. Masih jarang distro GNU/Linux membawakan BFQ sebagai default scheduler. Yang saya tahu hanya CachyOS, sebuah distro yang fokus pada improvisasi performa.
Kamu bisa mengetahui scheduler apa yang kamu gunakan sekarang dengan perintah ini.
$ cat /sys/block/sdX/queue/scheduler
[mq-deadline] kyber bfq none
Code language: Shell Session (shell)
Hasil di atas menandakan saya sedang menggunakan mq-deadline
di Void GNU/Linux saya.
Cara Set Default Scheduler BFQ di Linux
Kita bisa mengganti scheduler yang kita inginkan, misalnya BFQ
.
Lewat Konfigurasi Kernel

Kita bisa mematikan scheduler lain selain BFQ di menu I/O Scheduler
ketika mengonfigurasi kernel. Harap diingat, langkah ini dilakukan saat kompilasi kernel.
udev
Kita bisa menggunakan udev rules. Pertama buat berkas di /etc/udev/rules.d
bernama 60-io-schedulers.rules
.
# vim /etc/udev/rules.d/60-io-schedulers.rules
Code language: Shell Session (shell)
Disini saya ingin menerapkan scheduler BFQ di /dev/sdb
.
ACTION=="add|change", KERNEL=="sdb", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="bfq"
Code language: JavaScript (javascript)
Selesai dan simpan berkasnya. Lakukan ini agar perubahan udev dapat berjalan.
$ sudo udevadm trigger
Code language: Shell Session (shell)
Jika sudah, periksa scheduler yang sekarang kamu gunakan.
$ cat /sys/block/sdb/queue/scheduler
mq-deadline kyber [bfq] none
Code language: Shell Session (shell)
GRUB Config
Selain udev dan konfigurasi kernel, penerapan BFQ dapat dilakukan dengan GRUB.
Buka /etc/default/grub
dengan text editor kamu.
$ sudo vim /etc/default/grub
Code language: Shell Session (shell)
Carilah GRUB_CMDLINE_LINUX
dan tambahkan scsi_mod.use_blk_mq=1
.
GRUB_CMDLINE_LINUX="scsi_mod.use_blk_mq=1"
Code language: JavaScript (javascript)
Jangan lupa memperbarui konfigurasi grub.
$ sudo grub-mkconfig -o /boot/grub/grub.cfg
Code language: Shell Session (shell)
GRUB_CMDLINE_LINUX=”scsi_mod.use_blk_mq=1″
Leave a Reply