Interrupt latency test bench on RTAI (StrongArm port)
gl at dsa-ac.de
Fri Aug 2 17:18:32 CEST 2002
> I have done a test bench of the gpio irq latency, and i found that the mean
> latency is very good (about 5 us), but the worst case latency is not good :
> over 300 us.
How did you measure it? In my experience, checked essentially by running
latency_calibration example, max latency is below 200us, but this is only
i you really stress the system. On an idle system max latency normally
doesn't exceed 60us. One problem wioth ARMs we haven't been able so far to
resolve / clarify is that latencies increase significantly just under
"pure" user-space load (even without system-calls). BTW, if you use just
raw IRQs, you are fine with 24.1.9, if, however, you plan to use
RTAI-scheduling / timers on ARM - please use the CVS version.
> My setup is : an external timer, that generate a rt irq each 1 ms.
> There is no rt task, no other rt irq, but a lot of linux irqs.
> It seems that our ethernet chip linux irq (cs8900, with standard arm linux
> driver) is disturbing real time irq process.
> Is it possible ?
It should only be possible if the driver uses assembly code to disable
interrupts, which is hardly the case. Otherwise, load, created by
other interrupts shall create only a minor increase in RTAI latencies.
However, it looks like on ARM there's a problem with latency, one of the
possible explanations is cache-misses. Which I also hold responsible for
increased latencies under user-space load.
> Does any body have the same problem or know the solution ?
Guennadi Liakhovetski, Ph.D.
DSA Daten- und Systemtechnik GmbH
More information about the Rtai