How can I measure complex I/O activity to develop realistic benchmarking? [closed]

Solution 1:

You can use blktrace to record real system storage activity and profile an existing workload. That can be captured to file.

The trace can then be replayed.

Another interesting possibility could be the use of the new sysdig utility to try to analyze what's going on under representative workloads.

In addition, an answer here shows an interesting approach using System Tap:
Linux utility to record IO statistics (random/sequential, block sizes, read/write ratio)