elvtune - I/O elevator tuner


elvtune [ -r r_lat ] [ -w w_lat ] [ -b b_max ] /dev/blkdev1 [ /dev/blkdev2 ... ]

elvtune -h

elvtune -v


elvtune allows to tune the I/O elevator per blockdevice queue basis. The tuning can be safely done at runtime. Tuning the elevator means being able to change disk performance and interactiveness. In the output of elvtune the address of the queue tuned will be shown and it can be considered as a queue ID. For example multiple partitions in the same harddisk will share the same queue and so tuning one partition will be like tuning the whole HD.


-r r_lat
 set the max latency that the I/O scheduler will provide on each read.
-w w_lat
 set the max latency that the I/O scheduler will provide on each write.
-b b_max
 max coalescing factor allowed on writes when there are reads pending in the queue.
-h help.
-v version.


Actually the only fields tunable are those relative to the IO scheduler. It’s not possible to select a one-way or two-way elevator yet.

For logical blockdevices like LVM the tuning has to be done on the physical devices. Tuning the queue of the LVM logical device is useless.


0 on success and 1 on failure.


Ioctls for tuning elevator behaviour were added in Linux 2.3.99-pre1.


Andrea Arcangeli <> SuSE


The elvtune command is part of the util-linux-ng package and is available from

openSUSE Logo