--- Paolo Mantegazza <[EMAIL PROTECTED]>
wrote:

> Studying MTD wrote:
> > 
> > Hi all,
> > 
> > I am getting on my i386 box :-
> > ---------
> > LINUX TICK AT 100 HZ
> > CALIBRATED CPU FREQUECY 298424000 HZ
> > CALIBARED APIC-INTERRUPT-TO-SCHEDULER LATENCY 1749
ns
> > CALIBRATED ONE SHOT APIC SETUP TIME 251 ns
> > 
> > FOR 30 TASKS: TIME 222 (ms), SUPS/RES SWITCHS
60000,
> > SWITCH TIME (INCLUDING
> > FULL FP SUPPORT) 3697(ns)
> 
> On a list of 30 tasks a full task switch, including
the support of
> saving restoring FPU registers, using suspend/resume
(SUSP/RES not
> SUPS/RES) takes 3.7 us.
>
> > FOR 30 TASKS: TIME 213 (ms), SUPS/RES SWITCHS
60000,
> > SWITCH TIME (INCLUDING
> > FULL FP SUPPORT) 3557(ns)
> 
> Same has above. I suspect you typed the above result
by hand. In fact,
> unless you changed the test yourself, the above
lines should refer to
> semaphores signal/wait.
>

I am attaching rt_process.c for your reference.
 
> On my PII 233 MHz I get 2.5 us (UP). What 300 Mhz
machine you are using,
> UP/SMP/MUP, with what version of RTAI? 

It is Sony VAIO 505TX.
I think UP or SMP, but not sure.
RTAI version : rtai-24.1.4

> 
> I know from the above lines that you should be using
the SMP
> scheduler, which has more overhead, since it has to
prepare also for
> messages to be sent to other CPUs having ready tasks
runnable on them.
> Am I right?

I think, you are right :)

> 
> > Can someone please explain to me :-
> > 
> > 1. what is the meaning to
APIC-INTERRUPT-TO-SCHEDULER
> > LATENCY
> 
> The time that passes between the timer interrupt and
its programming for
> the next shot.
> 

what you mean by next shot ?
you mean next task , upto here ->
rt_switch_to(new_task) ?


> > 2. why APIC-INTERRUPT-TO-SCHEDULER LATENCY is very
big
> > number 1749 ns
> > 3. If possible, show me the path of the
> > APIC-INTERRUPT-TO-SCHEDULER (means how can we
divide
> > 1749 ns)
> > 
> 
> It is just a point of view, to me 1749 nanosecs is
not too big. The path
> is described above.
> 

I am guessing the followings, please correct me if i
am wrong :-

I think 300 MHz has CPU cycle of 3.33 ns .
So 1749 ns means approx. 525 instructions.

I think path is (please correct me) :-

Timer Interrupt -> Timer Interrupt handler ->
scheduler (say rt_schedule) -> switch task (say
rt_switch_to)

Please name the function of Timer Interrupt and Timer
Interrupt handler in case of RTAI.

rt_schedule is approx 195 instructions.
rt_switch_to is approx 30 instructions.

So it will 225 instructions for scheduler and task
switching, am i right ?

So who is taking next 300 instructions ?

Are you also saving task context in Timer Interrupt
handler ?


Thanks for your help.


__________________________________________________
Do You Yahoo!?
Yahoo! Autos - Get free new car price quotes
http://autos.yahoo.com
-- [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/

Reply via email to