Block I/O Scheduler Performance
The aim of the project is to characterise the performance of the different block I/O schedulers available in Linux 2.6, under various workloads. We're particularly interested in the interaction with RAID. The goal is to both improve performance in the general case, and to produce documentation and guidelines for choosing and tuning a scheduler for a particular workload.
The I/O schedulers available in Linux 2.6 are:
- Complete Fair Queuing (CFQ)
There is a description of these in LinuxIOSchedulers
Additionally, we have implemented two new schedulers:
IOScheduling/VRscheduler: an implementation of the V(R) scheduling algorithm;
IOScheduling/FIFOscheduler: a pure FCFS scheduler.
The tools we're using for performance testing include:
Aaron's honours thesis describing the work in detail is now up at http://www.ertos.nicta.com.au/publications/#ug
IOScheduling/Talks --- Talks about this work
IOScheduling/ToDo --- things that need to be done
IOScheduling/TestHardware --- Notes on the disk array we're using for testing
IOScheduling/Ideas --- Possibilities for future work