Hi,

some days ago I posted a request for comments about timer using local
APICs in place of the 8254. I got no further comment.

Meanwhile we've finished a local APIC timer based SMP scheduler, both
periodic and oneshot, for RTAI:

(rtai-0.3x.tgz, http://server.aero.polimi.it/projects/rtai/),

and compared it to its equivalent, just 10-15 code lines changed/added
in a total of 1500, using the 8254. 

Our first findings are (DUAL PII 350, SOLTEK motherboard):

- There are no substantial performance differences for a periodic
timing. 

- For a single periodic task the oneshot scheduler has a latency 5-6 us
less than that of the 8254. I was expecting a figure around 3 us.
Once calibrated they appear equivalent in functionality and performance
qualities. Clearly you gain 5-6 us in processing power using the local
APIC, a substantial % only at scheduling frequencies that are not
practical because of the jitter.

- Scheduling jitter substantially the same, especially under heavy Linux
front end processing. It seems slightly better, for the APIC case, under
low front end Linux usage.

This are rough preliminary impressions. I did not measure for a long
time under realistic conditions, the load was created by using one or
more "ping -f somewhere" and "ls -rA / >filename". On my machine a
single instance of them uses an average cpu of 85% with sizable duration
peaks of up to 190%.

In my opinion the best thing you get from using local APIC timers is the
possibility of leaving all of the Linux timing functionalities
untouched, as you do not have to pend any interrupt request to the 8254,
except those needed to recover jiffies count lost in short peaks of
excessive real time computational load.


Ciao, Paolo.
--- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
----
For more information on Real-Time Linux see:
http://www.rtlinux.org/~rtlinux/

Reply via email to