December 4, 2018
Linux disk scheduling algorithms
techrepublic.com/article/how-to-change-the-linux-io-scheduler-to-fit-your-needs/
en.wikipedia.org/wiki/Deadline_scheduler
Ok, on 11/15/18 I learned about disk schedulers in my Operating Systems class. On kernel 4.18 -ish this is
the output:
When I ran this, I didn't realize that sda is my old SATA3 SSD. Linux Manjaro minimal.
$ cat /sys/block/sda/queue/scheduler
noop deadline [cfq] bfq-sq
A friend ran this on Antergos, supposedly sda is a NVMe.
$ cat /sys/block/sda/queue/scheduler
[mq-deadline] kyber bfq none
Now I run the same commands again a month later and I run the same command:
$ uname -r && cat /sys/block/sda/queue/scheduler
4.19.6-1-MANJARO
[mq-deadline] kyber bfq none
Now, all my drives list that same scheduler (mq-deadline). A SATA3 SSD, 500 GB HDD, 3 TB HDD. My two NVMe
drives list: none. And here is the reasoning on this link.
serverfault.com/questions/693348/what-does-it-mean-when-linux-has-no-i-o-scheduler/693380
In recent kernel changes in 4.20
Most Linux distributions default to no I/O scheduler in the case of NVMe SSDs, but for your viewing
pleasure today is a look at the performance against MQ Deadline, Kyber, and BFQ.
phoronix.com/scan.php?page=article&item=linux-420-io&num=1