At MySQL Conference and Expo 2009, I explained
how Linux I/O scheduler queue size affects MyISAM insert
performance.
It is well known that Linux implemented four types of I/O
schedulers (noop/deadline/anticipatory/cfq) in Linux kernel
2.6.10. The default is cfq in most distributions including RHEL,
which is not so good then noop normally outperforms, but I'll
talk this in other posts.
Linux I/O scheduler also has a functionality to sort incoming I/O
requests in its request-queue for optimization. Queue size is
configurable. Queue size is defined as
"/sys/block/sdX/queue/nr_requests" then you can change queue
length as follows.
# cat /sys/block/sda/queue/nr_requests
128
# echo 100000 > /sys/block/sda/queue/nr_requests
Changing queue size is even effective for noop …