Hi,

Sometime ago, I posted some questions/comments about semaphores. I have
some more results that I would like to share and get some
feedback/suggestions. 

Using RTAI uniprocessor scheduler, the time between the begining of
rt_sem_signal(&sem) and after the rt_sem_wait(&sem) turns to be around 1.5
usec ... quite fast ! (note one rt task send the rt_sem_signal and another
rt task receives it.)

Using RTAI smp scheduler (apic), the time between the begining of
rt_sem_signal(&sem) and after the rt_sem_wait(&sem) turns to be around

4.9 usec if both rt task are set to run on the SAME processor.
But, with one task on one processor and the other on the other one, we
measure 14.9 usec.

Roughly 10 usec more than in the case where both tasks are on the same CPU
with smp scheduler  and close to 10 times the time compared to uni
processor scheduler.

I can see that this maybe the price to pay to use a dual processor system
since data transfer will be almost instantaneous through RAM but I wonder
if anybody ever thought of looking at this more closely ? From a
previous post, I was told that there was somekind of communication or 
signal between the CPU that would explain this delay. Could somebody point
me the piece of code doing that ?

Note: tests performed with DUAL P-III 500 Mhz system

Thank you

Michel
----------------------------------------------
Michel Doyon, M.Eng.
Senior STVF Control Engineer
Canadian Space Agency
6767 route de l'aeroport
St-Hubert (Quebec)
J3Y 8Y9 - CANADA
Tel.:  (450) 926 4679 - Fax :  (450) 926 4695
[EMAIL PROTECTED]




-- [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