1

I have a process that's IO bound:

my_username@GPU8:~$ ps -U my_username -u
USER        PID    %CPU %MEM    VSZ   RSS      TTY      STAT START   TIME COMMAND
my_username 151348 12.7 52.4 47051296 34544380 pts/16   DNl+ 11:38  15:27 python my_py.py

There are other IO bound processes on the system, from other users.

I know about iotop, but it requires root access which I don't have.

How can I tell the quantity of resources my program is waiting for, as a fraction of capacity? I'm essentially looking for an estimated waitime until my program can run again.

0

but it requires root access which I don't have.

Any sort of detailled insights into the overall system performance or interventions to influence behaviour will also require root access. What are you trying to achieve?

an estimated waitime until my program can run again.

So you've run ps a few times and each time you've seen it in uninterruptible sleep, so your conclusion is that it has been in that state continuously? If so your logic is flawed.

We can't begin to guess when it might complete.Not only do we not know what your program does, we don't know what everything else on the system is doing, and we don't know what the capabilities of your storage are. Even if we did, measurements like utilization are somewhat misleading.

If it is IO bound then its likely to be using much less than RR_TIMESLICE (100ms) in the kernel on each invocation. How frequently it gets a to the top of the queue will depend on the number of runnable processes at any one time. But if most of the other processes are IO Bound too, then there will likely only be a very short interval when the process is runnable and not yet in the CPU.

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.