Eric Eric wrote:
> On Sat, Apr 23, 2011 at 5:41 PM, Gilles Chanteperdrix <
> [email protected]> wrote:
> 
>> Eric Eric wrote:
>>> Hello, I've asked a lot of questions here and gotten very prompt and
>> helpful
>>> responses, so I summarized them in a FAQ since I figure others may have
>>> similar questions.  See http://ericrebates.zzl.org/xen_faq.txt .  If
>> this
>>> seems useful maybe someone can append them to the end of the wiki FAQ.
>> I am not sure all questions really are really that frequent, but yes, we
>> should add some to the FAQ. Would you be willing to do it? If yes, I
>> will give you write access to the wiki.
>>
> 
> Sure.  Maybe the best approach is to create a link from the FAQ to an LFAQ
> (less frequently asked questions) so as not to add a bunch of questions that
> don't apply to most people.
> 
> 
>>> On another note, I have been comparing Xenomai's context switch latency
>> to
>>> GHS Integrity.  I found that on average Xenomai seems to take three times
>> as
>>> long to context switch versus Integrity (12uS vs. 4uS) running almost
>>> identical test code.  Does anyone know why this may be or how to reduce
>> this
>>> latency in Xenomai?  Since it appears Gilles helped implement the fast
>>> context switching extension for the Linux kernel, I'm assuming Xenomai is
>>> also taking advantage of this extension.
>> I assume you are measuring context switch times in kernel-space, then
>> FCSE will not help you, FCSE helps for MMU context switches.
> 
> 
> Right, didn't think about that.  I suppose FCSE will also not help with
> context switches between threads of the same process either.
> 
> 
>> And if you
>> are testing on omap3, FCSE is not implemented for omap3. Do you have
>> unlocked context switch enabled ?
>>
> 
> Unlocked context switch is enabled.

Disabling it will reduce the context switch time.

> 
> 
>> What I-pipe patch version are you using?
>>
> 
> 2.6.33-arm-1.18-00

There was no big changes for omap, but you should use the latest (1.18-02).

> 
> 
>> You can probably reduce a bit the time by using rt_timer_tsc() or even
>> xnarch_get_cpu_tsc() to do the measurements, then rt_timer_tsc2ns after
>> the second measurement, but I am afraid you will not go as low as 4us.
>>
> 
> I will try this although I doubt it will have much impact.  I say that
> because I also used rtdm_clock_read_monotonic to benchmark mutex lock/unlock
> cycles, and got down to 2uS in that measurement, which seems to imply that
> the overhead of rtdm_clock_read_monotonic is small compared to 12uS.

Well, I would not call 2us small compared to 12us. But yes 12 - 2 is
still far from 4us.

> 
> 
>> You can also try and enable the I-pipe tracer to see where the time is
>> spent, but beware of the time dilation...
>>
> 
> This seems like an interesting idea.  What is the time dilation issue?

The tracer introduces a sizeable overhead especially on ARM.

-- 
                                                                Gilles.

_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help

Reply via email to