On 2011-09-14 15:13, Gilles Chanteperdrix wrote:
> On 09/14/2011 02:18 PM, Henri Roosen wrote:
>> We'll start experiments running our Xenomai application on a
>> multi-core CPU (x86/ARM). I'm sure there are some Xenomai users who
>> already have experience with it.
>>
>> What I would like to do is to run the Xenomai realtime threads on one
>> core of the multi-core CPU. And I would like to reserve this core only
>> for the Xenomai realtime threads.
>>
>> I'm using the Native API, so I can pass the CPU affinity flags for the
>> Xenomai threads during task creation/shadow. But how can I make sure
>> other threads will not make use of the same processor? I cannot call
>> taskset for every task that is spawned... right?
>>
>> Are there any idea's on how this configuration could be made easier?
>> It would be nice if there was a kernel config option to reserve
>> core(s) for Xenomai that Linux will not use.
>>
>> Any ideas and help are welcome!
> 
> The kernel has an "isolcpus" option, which allows to specify which cpus
> should not be used by Linux.

...or cgroups. isolcpus is much simpler to set up, but less strict (any
process tuning its affinity is able to circumvent this, but not cgroup
isolations).

> 
> See Documentation/kernel-parameters.txt in the linux kernel sources for
> an explanation.

...but be warned that there is no 100% isolation. Quite a few Linux
kernel threads and IPIs are required to continue hitting any online CPU.
Things are improving to reduce those noise Linux-wise, but there is no
100% in sight yet.

Jan

-- 
Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux

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

Reply via email to