For sizing purposes I need to understand what requirements an application has to the I/O subsystem. I would love to do what I call I/O sniffing and obtain a list of events from the block layer like this:
initiator XYZ requests block 4711 from device 0815
initiator BLA writes block 1234 to device 9876
I have been told blktrace was what I am looking for but I cannot get this info from that tool.
Seems like a job for SystemTap, the SystemTap beginners guide by Red Hat has some disk and IO sample scripts to get you started as does sourceware.org.