Reducing latency on multicore pc's - Success!

More
06 Nov 2019 13:00 #149704 by andypugh
Go back to onboard graphics?

Please Log in or Create an account to join the conversation.

More
01 Oct 2021 20:44 - 01 Oct 2021 20:45 #221980 by RDA
Hello,

So I got myself a 19" panel pc and wanted to try out linuxcnc on it. Thanks for the easy instructions I managed to get it running (simulation). I then started playing around wit the latency test, my first set of 6 x glxgears gave me a bit over 400k jitter as a result, not too shabby.
My panel pc is running on:
Intel Core i3-7100U
4Gb RAM
MSI model: MS-98H3
Intel HD Graphics 620

So a startpoint of over 400k I first set the GOVERNOR from powersave to performance. This took the jitter to a bit under 200k, so half of what it was. Next think I did was disable hyperthreading from bios and jitter dropped to about 160k, last was isolcpu and im now at around 120k.
So the biggest thing for sure was the power save and then hyperthreading and isolcpu both contributed roughly the same amount.

Are there any more easy tricks? I tired playing around with videocard memory sizes in bios but those didnt have that much of an effect.

I also assume using something like a Mesa for driving motors helps quite a bit as the fast switching is moved to the FPGA?

Any way to narrow down whats the actual bottleneck?
Last edit: 01 Oct 2021 20:45 by RDA.

Please Log in or Create an account to join the conversation.

More
01 Oct 2021 20:53 - 01 Oct 2021 20:57 #221981 by andypugh

Are there any more easy tricks?

You could try the RTAI kernel and matching LinuxCNC version.
I have a Core i3 machine with a latency < 2000nS. But that isn't an RTAI thing, that machine is just as good with preempt-rt.
model name : Intel(R) Core(TM) i3-3220T CPU @ 2.80GHz
stepping : 9
microcode : 0x17
cpu MHz : 2793.547
So it is more often the motherboard than the CPU that determines latency.  
Attachments:
Last edit: 01 Oct 2021 20:57 by andypugh.

Please Log in or Create an account to join the conversation.

More
02 Oct 2021 12:31 #222009 by RDA
Thanks for the reply. Today I tried with the official intel drivers using MXTweak but it made it worse ~+70k ns.

Turning everything off from bios and seems I end up in around 150uS servo and 90uS base threads (I will need to playaround with the graphics memory etc in bios).

As I see preempt RT probably being supported more and more in the future, I would like to stick with that (please correct me if I am totally off).

I just assume that 150uS latency with Mesa cards is not "that" bad? Should I try with different RT kernel versions?

Please Log in or Create an account to join the conversation.

More
20 Oct 2021 18:30 #223696 by Joco
Different RT kernel versions matter as does the OS.

On “sensitive” h/w I have found, using the same kernel and kernel options, significant latency differences between Debian and Mint.  I don’t know why it happens but time and again I have found a Mint install on the same sensitive kit trounces Debian. Even with the same kernel versions.

To be fair this is on kit that is sensitive and requires the setup to be “just so”.

I would suggest some experimentation beyond the official debian path if you are looking get the best out of kit that is not immediately sub 70us on offical lcnc debian.    For example, i now have an HP thin client machine running a very frugal AMD T56N on Arch Linux RT kernel delivering ~~26 servo jitter.  Debian 10 and 11 measured materially north of 100us (120+ from memory).  Mint19 gave ~35us. 

Please note that the key here is SENSITIVE kit.  I have a dell 3020 machine on debian 10 delivering excellent jitter. Experimentation deliver real wins, just be prepared to invest the time.  

Cheers - J. 

Please Log in or Create an account to join the conversation.

More
20 Oct 2021 18:35 #223699 by Joco
Andy - is that i3 machine a custom build or something stock from big name like HP, Dell etc?  If the later what exact model?

Please Log in or Create an account to join the conversation.

More
01 Nov 2021 12:59 #224872 by andypugh

Andy - is that i3 machine a custom build or something stock from big name like HP, Dell etc?  If the later what exact model?
 

It's an RM-One 310: www.ebay.co.uk/itm/121963066201

Mainly bought as an easy machine to move about the place. But with Parallel port and two PCI slots it makes a good test bed machine as it can run any Mesa card. 
The following user(s) said Thank You: tommylight, Joco

Please Log in or Create an account to join the conversation.

More
19 Dec 2021 15:53 - 19 Dec 2021 16:05 #229494 by rajsekhar
Hello..

I followed the first post of this discussion steps and got some improvement in latency value..

But I could not complete the step: - add the upstart script "irq-affinity.conf" to /etc/init (see attachments, it will move the irq-handling to the first core)

can anyone demonstrate/ what are the exact steps/commands..I am not a computer guy.

Thanks,
Last edit: 19 Dec 2021 16:05 by rajsekhar.

Please Log in or Create an account to join the conversation.

More
19 Dec 2021 21:42 #229510 by arvidb
The original post is nine years old and the parts concerning kernel and init system configuration are no longer relevant. If you have latency issues, try to find newer info or start a new thread describing your problem. Usually much can be done by disabling power saving features and unused peripherals in the BIOS.
The following user(s) said Thank You: tommylight

Please Log in or Create an account to join the conversation.

Time to create page: 0.357 seconds
Powered by Kunena Forum