Hi all,

I have some results and some questions on running Xenomai on a Dual Core CPU.
At my PC I have a Pentium D CPU (3.2 GHz), kernel 2.6.19.2, Xenomai 2.3 + some 
COW patches.
In the kernel I have enabled SMP.

The first interesting thing I noticed is that this kernel seems to run all 
standard processes
on core 0. The kernel does not automatically distribute processes on two cores.
I think I saw a different behaviour with an earlier kernel version (2.6.17 or 
even 2.4.33).
I do not have to use the isolcpus kernel parameter to force running all user 
space tasks on core 0.
This is exactly the thing I wanted to have. All "standard" linux tasks are 
running
on core 0.
Does anybody know if there was a change in the kernel?

Now I placed all real time tasks from Xenomai on core 1. This works fine.
My application calculates periodically a fairly complex simulation model. The 
interesting thing
is now, that the computation time needed for this model is much more constant 
in opposite to the
UP mode. On an UP system I had computation times between 111 and 170 
microseconds.
With the SMP system I have now computation times between 111 and 115 
microseconds.
Great! The worst case execution time is very close to the best case execution 
time!
I think this is caused by a more deterministic usage of the cache for the real 
time system.
In the UP system the cache cannot be reserved for the real time application, 
i.e. the real time
application has to re-read more often directly from memory.

Now my questions:
In a setup that uses core 0 for standard linux stuff and core 1 for Xenomai 
stuff the
Xenomai scheduler is running in SMP mode. However, I am not sure if this 
required in this setup.
As all real time code is bound to one core there does not have to be any multi 
processing
save synchronisation for the real time code.
My proposal is to support three different scheduling modes:
1 - UP as now
2 - SMP as now
3 - UP on a certain core: All real time code runs on one (runtime selectable) 
core even
if the linux kernel is fully SMP. This should increase the performance as inter 
CPU
protection is not required for the real time code.
Any comments on this idea are welcome!

I also use rtnet. Unfortunately I am not able to force rtnet (RTDM based) to 
run on CPU core 1
without patching the RTDM code.
A couple of months ago, I already asked for this issue.
Jan, can you tell me the latest news regarding this issue?

Thanks for all feedback on the topics

Regards

Mathias 

-- 
Mathias Koehrer
[EMAIL PROTECTED]


Viel oder wenig? Schnell oder langsam? Unbegrenzt surfen + telefonieren
ohne Zeit- und Volumenbegrenzung? DAS TOP ANGEBOT JETZT bei Arcor: günstig
und schnell mit DSL - das All-Inclusive-Paket für clevere Doppel-Sparer,
nur  44,85 €  inkl. DSL- und ISDN-Grundgebühr!
http://www.arcor.de/rd/emf-dsl-2

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

Reply via email to