Saturday, October 23, 2010

Linux I/O Schedulers with NCQ-Capable Disks

An interesting post over on Enterprise Data Management Musings asks in part whether the linux I/O scheduler is even relevant for non-RAID workloads on SATA drives that support NCQ.

I've been frustrated with the performance of a particular SATA disk on my workstation which is tasked with batch operations when it's saturated with I/O, so I decided to switch it from the cfq scheduler (default for all disks in Ubuntu) over to noop. This should increase total IO throughput (and consequently reduce total time to completion of all jobs) at the risk of starving some processes for an indeterminate amount of time. That's not a concern since this disk is only used for batch jobs.

Here are some interesting performance graphs showing the differences between the schedulers.

Instructions for making permanent changes are available here.

Be the first to reply!

Post a Comment

By submitting a comment you assert that it is your own original work and agree to grant a non-exclusive licence to Brandon Thomson to display it on log.bthomson.com.