Fedora Developers Are Trying To Figure Out The Best Linux I/O Scheduler
Fedora developers are working on trying to figure out the best default behavior moving forward for their I/O scheduler selection.
With the multi-queue I/O queuing mechanism (BLK-MQ) stabilizing and ready to be the default with the legacy I/O code potentially being removed in a coming kernel release, Fedora developers and users are trying to figure out what is the best I/O scheduler to use as the default for their distribution.
The primary contenders are between none (suitable for high-end NVMe SSDs), the MQ-Deadline that some Linux distributions default to, or BFQ as the promising Budget Fair Queuing scheduler that has a dedicated following and can work quite well for a responsive Linux desktop in its low-latency mode. There is also Kyber as the Facebook-developed BLK-MQ I/O scheduler, but there doesn't seem to be much interest in making that Fedora's default -- and in my own tests, Kyber usually performs the worst of the above mentioned alternatives.
See my recent Linux 4.20 I/O scheduler benchmarks for some recent performance numbers on these different scheduling options and some other numbers from 4.19.
At this point there doesn't appear to be a clear consensus about what I/O scheduler would be best for Fedora moving forward, but we'll see where this discussion heads over the days/weeks ahead. Those wishing to follow this discussion can find it on Fedora's devel list.
With the multi-queue I/O queuing mechanism (BLK-MQ) stabilizing and ready to be the default with the legacy I/O code potentially being removed in a coming kernel release, Fedora developers and users are trying to figure out what is the best I/O scheduler to use as the default for their distribution.
The primary contenders are between none (suitable for high-end NVMe SSDs), the MQ-Deadline that some Linux distributions default to, or BFQ as the promising Budget Fair Queuing scheduler that has a dedicated following and can work quite well for a responsive Linux desktop in its low-latency mode. There is also Kyber as the Facebook-developed BLK-MQ I/O scheduler, but there doesn't seem to be much interest in making that Fedora's default -- and in my own tests, Kyber usually performs the worst of the above mentioned alternatives.
See my recent Linux 4.20 I/O scheduler benchmarks for some recent performance numbers on these different scheduling options and some other numbers from 4.19.
At this point there doesn't appear to be a clear consensus about what I/O scheduler would be best for Fedora moving forward, but we'll see where this discussion heads over the days/weeks ahead. Those wishing to follow this discussion can find it on Fedora's devel list.
23 Comments