Isolspus=1 still needed?
I installed a fresh 2.7.3 system. for older systems i made settings in grub to isolate one cpu for linuxcnc only.
i read this article:
"3. Latency Testing with 3.14 RTAI
There is a new scheduler in RTAI for 3.10 and 3.14. It no longer requires any isolcpus settings.
3.14 RTAI is in the testing stage at the time of this writing (September 2014). It should be in the official Linuxcnc release in the near future."
is the isolcpus=1 still needed in 2.7.3?
i use an intel d945cglf2 dual core atom board (hypertreading off)
best regards
peter
Please Log in or Create an account to join the conversation.
how can i check the version of the RTAI?
Please Log in or Create an account to join the conversation.
There is no distro for the new rtai kernel and it only runs on Jessie .
www.linuxcnc.org/2015/11/29/new-rtai-kernel/
uname -r will tell you which kernel you are running, but it will be 3.4.9-rtai if you installed from the recent iso
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.
Experiment and prove to yourself whether you need it.
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.
I have a quad core machine
Then you should be isolating 3 cores not 1
wiki.linuxcnc.org/cgi-bin/wiki.pl?The_Is..._Parameter_And_GRUB2
Please Log in or Create an account to join the conversation.
Then you should be isolating 3 cores not 1I have a quad core machine
Are you sure about that?
Isolcpus remolves the specified CPUs from the SMP scheduler. My understanding is that the idea is to isolate 1 CPU to perform realtime tasks and leave the others to carry on as normal.
My understanding is that for a 4-core machine you would isolate core 3 for RTAI use, leaving cores 0,1,2 for general system tasks.
Please Log in or Create an account to join the conversation.
isolcpus
Scheduler options
Name
isolcpus — Isolate CPUs from the kernel scheduler.
Synopsis
isolcpus= cpu_number [, cpu_number ,...]
Description
Remove the specified CPUs, as defined by the cpu_number values, from the general kernel SMP balancing and scheduler algroithms. The only way to move a process onto or off an "isolated" CPU is via the CPU affinity syscalls. cpu_number begins at 0, so the maximum value is 1 less than the number of CPUs on the system.
This option is the preferred way to isolate CPUs. The alternative, manually setting the CPU mask of all tasks in the system, can cause problems and suboptimal load balancer performance.
It is a blunt instrument, all it does is take the other cpu's out of the equation just leaving one.
Because this one is fully engaged running Linuxcnc, all the code is in its cache, which reduces read times and lowers latency.
On a 2 core machine for example, if you have another core available, which is not fully utilised, the SMP scheduler will try to use that core when it is not busy and the rt code gets spread between the caches of the 2 cores, increasing read time and latency.
You could achieve the same with a cpu-hog process running on the second core to keep everything on the first one.
There are much more elegant ways to set cpu affinity.
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.