0001 ===================
0002 Switching Scheduler
0003 ===================
0004
0005 Each io queue has a set of io scheduler tunables associated with it. These
0006 tunables control how the io scheduler works. You can find these entries
0007 in::
0008
0009 /sys/block/<device>/queue/iosched
0010
0011 assuming that you have sysfs mounted on /sys. If you don't have sysfs mounted,
0012 you can do so by typing::
0013
0014 # mount none /sys -t sysfs
0015
0016 It is possible to change the IO scheduler for a given block device on
0017 the fly to select one of mq-deadline, none, bfq, or kyber schedulers -
0018 which can improve that device's throughput.
0019
0020 To set a specific scheduler, simply do this::
0021
0022 echo SCHEDNAME > /sys/block/DEV/queue/scheduler
0023
0024 where SCHEDNAME is the name of a defined IO scheduler, and DEV is the
0025 device name (hda, hdb, sga, or whatever you happen to have).
0026
0027 The list of defined schedulers can be found by simply doing
0028 a "cat /sys/block/DEV/queue/scheduler" - the list of valid names
0029 will be displayed, with the currently selected scheduler in brackets::
0030
0031 # cat /sys/block/sda/queue/scheduler
0032 [mq-deadline] kyber bfq none
0033 # echo none >/sys/block/sda/queue/scheduler
0034 # cat /sys/block/sda/queue/scheduler
0035 [none] mq-deadline kyber bfq