Results of latency test, list of computers tested for use with LinuxCNC

More
31 May 2023 11:01 #272546 by royka
That's pretty high indeed, did you try to disable as many as possible energy saving settings in the bios? Adding kernel parameters?

Perhaps there is a bad ram chip, you could try to remove 2 of them, 32gb is a lot for LinuxCNC, 4gb is enough most of the times. To keep dual channel, you probably need to have one in slot 1 and 3.

The kernel parameters that worked for my machine and you could try:
isolcpus=3 intel_pstate=disable processor.max_cstate=0 idle=poll cpufreq.default_governor=performance i915.enable_dc=0 ahci.mobile_lpm_policy=1 irqaffinity=0 nomodeset quiet
The following user(s) said Thank You: tommylight, jhandel

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

More
31 May 2023 11:21 #272548 by jhandel
The bios on this little guy is useless and has no settings for performance. But I did follow this guide to set all the processors to performance :

moisescardona.me/changing-the-cpu-govern...erformance-in-linux/

Could be bad stick of ram, (pretty sure this little processor doesn't support duel channel ram).

I'll also give some of those parameters a try.. I am running isolcput but the others are worth a try.

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

More
31 May 2023 14:01 #272565 by mattdom142

hello all,

I had a bit of trouble with the automated test and will post my issues in that thread. But i did get some results. here they are. i do not understand them nor do i know what to do with them.

my machine is a HP M01-F3006

I added a network adapter as the built in one dropped tones of packets and was not useable. This is the one I added.

Gigabit CT PCI-E, EXPI9301CTBLK intel based chip that works just fine.

Your thoughts and questions are highly welcome. I will be testing the machine latter this week or next in the cut to se how it dose.

FYI i have 1um glass scales attached to the machine and will be using them for feed back.

I had two windows open running youtube in the background for this test for less then 30mins.

 

Update to this test.

I added a graphics card to see if I could reduce the latency. Here is what I added.

Radeon RX550. From MAXSUN. It's cheap and others have it working on linux just fine so I gave it a go and the results are impressive.

Max Jitter without GPU (onboard GPU only)                                                 194424
Max Jitter with GPU (Radeon RX550)                                                             68162

Ping latency test without GPU (onboard GPU only)   min/avg/max/mdev   .115/.292/.569/.024 ms
Ping latency test with GPU (Radeon RX550)             min/avg/max/mdev   .070/.109/.240/.019 ms

I am not using the standard test as i have a few issues with it. Which I am working on and will be reporting on that thread.

This test is the same test for each. I have two windows open both playing YouTube videos while the test is performed. My machine has 12 cores for the CPU I think and none of the cores have been partitioned or dedicated to any particular purpose. It may be possible to get similar results as what I have done here without the GPU just by separating the tasks on the CPU. If some one out there can confirm or deny this it would be great to here your thoughts and experiences. But I think adding the GPU is as easy as it gets. I just put the card in and had to update the addresses in the NANO network settings. That was it. Pictures are attached for your reference.

I have also done this test with just linux cnc running and nothing else and the numbers are even lower. When the machine is fully assembled and working I will do a full 3 axis test to see where it all lands. Having lots of fun and really enjoy this community and my build. 
Attachments:

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

More
31 May 2023 14:34 - 31 May 2023 15:04 #272569 by royka
Yes that's a big difference.

The ryzen 5600g is a 6 core with 12 threads. You might have (much) better results with disabling hyperthreading (HT) and isolating a or some cores. If you disable hyperthreading you could start with "isolcpus=5" otherwise "isolcpus=3-5".
Without disabling HT "isolcpus=10,11" or "isolcpus=6-11"

Edit: With AMD HT seems to be called SMT.
Last edit: 31 May 2023 15:04 by royka.

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

More
31 May 2023 14:46 #272572 by tommylight
None of the MB i have with AMD cpu's can disable hyperthreading, but that does not matter as all but one preform perfectly good for use with LinuxCNC.
The weird thing, the one that did not work well had a Ryzen 5 3500 that has no hyperthreading, it had terrible latency!
Even my Lenovo ThinkBook 14 G3 with Ryzen 5 5500 works nicely with LinuxCNC. And Lenovo ThinkPad T470 with Intel 6300 processor works, but with hyperthreading disabled, of course.
For Intel, always, always disable hyperthreading.
The following user(s) said Thank You: seuchato, royka

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

More
31 May 2023 15:31 #272577 by royka
Could it have been a 3500u with integrated graphics? Didn't test it myself but tweaking the settings with RyzenAdj might help.

github.com/FlyGoat/RyzenAdj

UI for RyzenAdj:
gitlab.com/ryzen-controller-team/ryzen-controller#debian-like

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

More
31 May 2023 15:47 #272582 by tommylight
Nope, it was a 3500X, came out after 3600 and the rest, probably 3600 with faulty scheduling/threading so came as 6 core/6 thread.

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

More
31 May 2023 16:11 #272585 by royka
I won't be surprised if it was a failed 3600. You would think it's the other way around but this proves it's hard to predict the latency numbers.

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

More
31 May 2023 16:54 #272590 by tommylight
It is not failed as in it failed during use, it is sold as such.
AMD makes a single processor, the 8 core substrate, from that depending on the failure rate, we get the 4 major versions:
2600/3600/5600/7600 is 6 core with one or two failed cores
2700/3700/5800/7800 is 8 cores with all cores working
3900/5900/7900 is dual substrate, sold as 12 core, so any or all of the 4 remaining cores failed
3950/5950/7950 dual substrate with all 16 functional cores.
-
Intel is much, much worse for this, but back in the Pentium 2/3 days, of this was good as they sold underrated clock speeds, sold pentium 3 labeled as celeron and to enable it as a fully fledged pentium 3 all you had to do is brake a singe pin on the processor! :)
The following user(s) said Thank You: seuchato

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

More
04 Jun 2023 10:30 #272870 by Ruddy
I have a problem tuning my HP T620 plus Thin Client after reading/googling old threads how to do it but different cpu, debian, etc.

Now I have around 60-80000ns, that's plenty, tuning the bios wont help at all.

or should I buy Atom motherboard mini itx (with parallel port) that has very low latency ?

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

Time to create page: 0.230 seconds
Powered by Kunena Forum