Re: [PATCH] block: BFQ default for single queue devices
From: Paolo Valente
Date: Wed Oct 03 2018 - 12:02:51 EST
> Il giorno 03 ott 2018, alle ore 17:54, Bart Van Assche <bvanassche@xxxxxxx> ha scritto:
>
> On Wed, 2018-10-03 at 08:29 +0200, Paolo Valente wrote:
>> [1] https://lkml.org/lkml/2017/2/21/791
>> [2] http://algo.ing.unimo.it/people/paolo/disk_sched/results.php
>> [3] https://lwn.net/Articles/763603/
>
> From [2]: "BFQ loses about 18% with only random readers, because the number
> of IOPS becomes so high that the execution time and parallel efficiency of
> the schedulers becomes relevant." Since the number of I/O patterns for which
> results are available on [2] is limited and since the number of devices for
> which test results are available on [2] is limited (e.g. RAID is missing),
> there might be other cases in which configuring BFQ as the default would
> introduce a regression.
>
From [3]: none with throttling loses 80% of the throughput when used
to control I/O. On any drive. And this is really only one example among a ton.
In addition, the test you mention, designed by me, was meant exactly
to find and show the worst breaking point of BFQ. If your main
workload of interest is really made only of tens of parallel thread
doing only sync random I/O, and you care only about throughput,
without any concern for your system becoming so unresponsive to be
unusable during the test, then, yes, mq-deadline is a better option
for you.
So, are you really sure the balance is in favor of mq-deadline?
Thanks,
Paolo
> I agree with Jens that it's best to leave it to the Linux distributors to
> select a default I/O scheduler.
>
> Bart.