Messages in this thread | | | Date | Tue, 22 Feb 2011 13:33:57 +0100 | From | Clemens Ladisch <> | Subject | Re: Interrupt Latencies |
| |
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
| |