Re: Interrupt Latencies

From: Clemens Ladisch
Date: Tue Feb 22 2011 - 07:32:41 EST


Schaefer Dr, Frank-Rene wrote:
> Having read "Moving interrupts to threads" at
>
> http://lwn.net/Articles/302043/
>
> I expected to reduce interrupt latency during a SPI
> communication by handling the transmit-receive in a
> 'quick_check_handler' using
>
> request_threaded_irq(...);
>
> However, the difference in latency to "request_irq(...)"
> is not measurable.

Threaded interrupts reduce the latency for _other_ interrupts because
most of the code has been moved into the thread. Without threaded
interrupts, the same could would be in the actual interrupt handler
(the equivalent of the quick check handler).

> It is totally incomprehensible to me why the 'quick_check_handler'
> must have a latency of 60us at min. (that are many thousand
> instructions).

The sytem's interrupt handling and the I/O accesses aren't fast.
Furthermore, waking the CPU up, or changing its frequency, can be quite
slow (but I don't know how much in the case of your Atom). You could
try reducing the interrupt latency by not letting the CPU get idle but
executing some low-priority busy loop.


Regards,
Clemens
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/