On Saturday, 2 May 2020 10:54:02 BST Dale wrote:
> Michael wrote:

> > I'd be interested to know as a comparison if Nikos' and Dale's I/O
> > unresponsiveness in swapping sees an improvement with the I/O scheduler
> > for
> > spinning drives set to bfq; e.g.:
> > 
> > echo bfq > /sys/block/sda/queue/scheduler
> 
> This is its setting at the moment. 
> 
> 
> root@fireball / # cat /sys/block/sda/queue/scheduler
> noop deadline [cfq]
> root@fireball / #

Ahh, you must be on an older kernel?

I'm on 5.4.28 here and these are the new kernel scheduler options:

#
# IO Schedulers
#
CONFIG_MQ_IOSCHED_DEADLINE=y
CONFIG_MQ_IOSCHED_KYBER=y
CONFIG_IOSCHED_BFQ=y
CONFIG_BFQ_GROUP_IOSCHED=y
# CONFIG_BFQ_CGROUP_DEBUG is not set
# end of IO Schedulers

The BFQ scheduler has a number of tunable parameters via sysctl, like weight, 
latency and what not, but unless you're into running endless benchmark tests 
to tune your particular devices, I'd leave it to do its thing with default 
settings.


> I know I can echo it in but where do I set that to that when booting? 

You can set a local script to switch from other schedulers - the default is 
mq-deadline - or you can disable the others in the kernel.  I don't know if 
you can pass an option to the kernel line at boot time.

I understand this is more effective with slow(er) spinning drives and perhaps 
old SSDs.  NVMe drives won't benefit from it and are better run with the 
default mq-deadline scheduler.

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to