Is there a way to measure the amount of I/O issued by a process (or set of processes) that is sync vs async in nature? Assume that I have root access to the system (linux) but that I do not know in advance what applications will be run, nor can I force the users to instrument their own code (i.e. I can't make them run /usr/bin/time [whatever] just to make my life easier...)

Something like a "more detailed iostat or htop" might well do the trick, but I don't know exactly what I'm looking for.

At least in some instances, it would be acceptable to reduce performance on a running process to get this information...

An example of the data matrix I'm ultimately trying to get would be "How many {sync,async} {operations,bytes} have been {written,read} by process PID since it was started?"

The primary filesystem here is ZFS, though a filesystem-agnostic answer would be even better.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.