| 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 |
| set a specific device to use the anticipatory or noop schedulers - which |
| 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 |
| noop anticipatory deadline [cfq] |
| # echo anticipatory > /sys/block/hda/queue/scheduler |
| # cat /sys/block/hda/queue/scheduler |
| noop [anticipatory] deadline cfq |