views:

694

answers:

2

With top it's easy to find out how much CPU each job uses. However, I want to hunt down a job that causes a high wait CPU. Is there a way to find out which jobs are blocked on I/O?

+1  A: 

iotop and latencytop may be helpful. Neither gives exactly "CPU wait time caused by a process" -- I'm not sure it even makes sense, because the CPU can and does go off to service other processes while waiting for IO -- but these two tools give overviews of (respectively) system I/O traffic and scheduling delays.

ephemient
both tools look nice, but the server I'm on can't easily be patched or upgraded to >2.6.20, so they don't work for me. but I'll keep them for future reference :)
biocs
+2  A: 

The processes blocked on IO are the ones marked as D in the status column (S column in top).

Johannes Weiß