A method for servicing threads within a multi-processor system is
disclosed. In response to an input/output (I/O) request to a peripheral
by a thread, a latency time is assigned to the thread such that the
thread will not be interrogated until the latency time has lapsed. After
the latency time is lapsed, a determination is made as to whether or not
the I/O request has been responded. If the I/O request has not been
responded after the latency time is lapsed, the latency time is assigned
to the thread again. Otherwise, if the I/O request has been responded
after the latency time is lapsed, the latency time is updated with an
actual response time. The actual response time is from a time when the
I/O request was made to a time when the I/O request was actually
responded.