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