Blame view

Documentation/block/switching-sched.txt 1.39 KB
23c76983e   Alan D. Brunelle   Some IO scheduler...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
  To choose IO schedulers at boot time, use the argument 'elevator=deadline'.
  'noop', 'as' and 'cfq' (the default) are also available. IO schedulers are
  assigned globally at boot time only presently.
  
  Each io queue has a set of io scheduler tunables associated with it. These
  tunables control how the io scheduler works. You can find these entries
  in:
  
  /sys/block/<device>/queue/iosched
  
  assuming that you have sysfs mounted on /sys. If you don't have sysfs mounted,
  you can do so by typing:
  
  # mount none /sys -t sysfs
73af994c7   Valdis Kletnieks   [PATCH] Document ...
15
16
17
  As of the Linux 2.6.10 kernel, it is now possible to change the
  IO scheduler for a given block device on the fly (thus making it possible,
  for instance, to set the CFQ scheduler for the system default, but
17a9e7bba   Randy Dunlap   Documentation: re...
18
  set a specific device to use the deadline or noop schedulers - which
73af994c7   Valdis Kletnieks   [PATCH] Document ...
19
20
21
22
23
24
25
26
27
28
29
30
31
32
  can improve that device's throughput).
  
  To set a specific scheduler, simply do this:
  
  echo SCHEDNAME > /sys/block/DEV/queue/scheduler
  
  where SCHEDNAME is the name of a defined IO scheduler, and DEV is the
  device name (hda, hdb, sga, or whatever you happen to have).
  
  The list of defined schedulers can be found by simply doing
  a "cat /sys/block/DEV/queue/scheduler" - the list of valid names
  will be displayed, with the currently selected scheduler in brackets:
  
  # cat /sys/block/hda/queue/scheduler
17a9e7bba   Randy Dunlap   Documentation: re...
33
34
  noop deadline [cfq]
  # echo deadline > /sys/block/hda/queue/scheduler
73af994c7   Valdis Kletnieks   [PATCH] Document ...
35
  # cat /sys/block/hda/queue/scheduler
17a9e7bba   Randy Dunlap   Documentation: re...
36
  noop [deadline] cfq