Hardware latency tests, used PC's

More
15 Jun 2020 12:37 #171740 by tommylight

So, if I get you right, we should set CPU governor to performance for real life too?

That is required only sometimes on PC's, on laptops that is not advisable due to overheating that may cause.
And the guvernor does not work sometimes on new computes, you can set it to whatever and the processor will still change frequency and states and multiplier and shut off some cores and ......

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

More
16 Jun 2020 00:50 #171797 by seuchato
OK, so no sense in setting gorvernor to performance.

here is some sample output from the script I wrote:

cat 1592259011.hw
LinuxCNC pc tests, version 20200615
********************************************************************************

General info:
Dell Inc., OptiPlex 980
Bios version A04, dated 09/11/2010
================================================================================
CPU related data:
model name : Intel(R) Core(TM) i5 CPU 650 @ 3.20GHz
cpu cores : 2
stepping : 5
cache size : 4096 KB
================================================================================
RAM:
Maximum Capacity: 16 GB
Size: 2048 MB
Size: 2048 MB
Size: No Module Installed
Size: No Module Installed
================================================================================
GPU related data:
product: Core Processor Integrated Graphics Controller
configuration: driver=i915 latency=0
================================================================================
Os related data:
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
Desktop: KDE, Session:
================================================================================
Kernel related data:
Kernel 4.19.0-9-rt-amd64
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_idle.max_cstate=0 processor.max_cstate=1 idle=poll isolcpus=1 "
Cpu idle driver: none
================================================================================
Keyboard & Mouse related data:
Number of mice:
Mice attached to USB:
Logitech, Inc. Cordless Mouse Receiver
Keyboards attached to USB:
MosArt Semiconductor Corp. Defender Office Keyboard (K7310) S Zodiak KM-9010
================================================================================

Running latency test:
Started firefox with vimeo.com/150574260
Preparing for latency test, using 5 glxgears ...


su xx -c "latency-histogram --bbinsize 1000 --sbinsize 1000 --show 2>&1 | tee 1592259011.lat &"
Loop started Di Jun 16 00:10:24 CEST 2020, should end after Di Jun 16 02:10:24 CEST 2020
latency info calculated is as follows:
7205 secs base min: -20.300 uS max: 20.400 uS sdev: 0.300 uS
7205 secs servo min: -28.000 uS max: 26.700 uS sdev: 0.700 uS
7206 secs base min: -20.300 uS max: 20.400 uS sdev: 0.300 uS


Attached you will find the bash script used to create above output. The script uses 5 glxgears and a vimeo video starting in the standard browser (firefox at my place, I did not test others) and then being displayed full screen. The glxgears are sort of randomly resized to 33%, 66% or 99%. If there are no realtime delays detected, the script runs for two hours. In case of realtime delays, the script stops.

Kindly let me know what you think of it. I am sure, it can be improved in every way. My motivation to write the script, was to provide a way to create comparable info on pc / linuxcnc compatibilty, that should be gathered in a consistent way. Hope it is of some use to others too.

greez
chris
Attachments:
The following user(s) said Thank You: tommylight

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

More
16 Jun 2020 12:39 #171841 by tommylight
Nice, thank you.
It should have :
-choice of base thread or no base thread,
-choice of time to run,
-it should quit when pressing ctrl+c, it does not quit at all, even when typing exit it will close the terminal window and leave everything else running as can be seen by the open glxgears,
-it is searching for firefox.desktop that is not there or anywhere, not even inside the bash file !!!
That said, it is doing a nice job of causing spikes with window resizing of glxgears.
Firefox should be used as default as it is included with almost all flavours of Linux. Chromium got booted due to using snapd, rightfully so.
All in all, nicely done.

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

More
16 Jun 2020 14:19 - 16 Jun 2020 14:20 #171846 by seuchato
Appetite comes with eating :-)

Thanks for the valuable feedback. I tried to make it as portable as possible. If you think, firefox is available for say 99% of the linuxcnc users, then I can "hardcode" it.

I'll certainly look into the suggested choices. Should be possible and makes sense. The reason it keeps spitting latency data when pressing Ctrl-C is that, I have to run the various processes in the background. So Ctrl-C just aborts the foreground processes. I guess I could have it display a message "Press any key to abort (not Ctrl-C or Ctrl-D)" then I could gracefully terminate all the background processes in the script. Would that be an option?

Greez
chris

PS: You think I got all the relevant data?
Last edit: 16 Jun 2020 14:20 by seuchato.
The following user(s) said Thank You: tommylight

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

More
16 Jun 2020 14:44 #171849 by tommylight

If you think, firefox is available for say 99% of the linuxcnc users, then I can "hardcode" it.

Debian and Mint come with it pre-installed, Debian with the ESR version mostly, but firefox is the default browser for Linux.

I guess I could have it display a message "Press any key to abort (not Ctrl-C or Ctrl-D)" then I could gracefully terminate all the background processes in the script. Would that be an option?

Yes, that would be nice.

PS: You think I got all the relevant data?

Way more than necessary, but it is nice to have all that info for troubleshooting purposes.
Thank you.

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

More
16 Jun 2020 15:18 #171854 by seuchato
I might have a chance to get the "promised" stuff done this weekend...

Way more than necessary, ...

What do you think is too much? Kindly bear in mind: my long term goal is kinda replacement / completion of this . I do hope there will be a possibility to generate a sortable table in the linuxcnc wiki, where people can go and check what is required to get their hardware to work and/or if at all.
I've done a "kinda" realtime timehistory, band pass limited generator for two independent shakers to make a bridge *tremble". Back then (Pentium Pro time) I had to get a 2 CPU compaq server to be able to do this ($7'000, the purchase department went nuts :-], Side note: ran the code yesterday on my i7 6xxx p50, CPU load did not change noticeable, while I remember back on the compaq, it went to 99% on both CPU's). From that time and the various threads on latency I read, I put together what I saw from my (limited) learning as in many cases important. I do not claim to have seen it all or even to have seen the right parameters. That's why I ask.

Greez
chris
The following user(s) said Thank You: tommylight

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

More
16 Jun 2020 20:55 #171879 by tommylight

Way more than necessary, ...

What do you think is too much?

Do not worry about that, that is very good as it shows info about everything on the PC, so that makes comparison and reporting results much, much easier.
Since we are on to requests, adding the option of testing base thread at 100000 would also be nice for older PC's running RT-Preempt kernel, since the new RTAI kernel do not allow Linuxcnc to work on them.
That is rarely needed, but it would give another chance at usability for some hobby machines and some bigger machines that do not need high step rates. For some users having a machine that works no matter how slow is much better than a non working machine. I am quite lucky at finding good PC's as i had 3 computer shops and some of my friends still have computer shops, so i can get them really cheap (like $600 HP tablet/laptop for $130 cheap) but not everyone has that luxury. And in general i prefer using older Enterprise edition Dell or HP or Lenovo or lately Fujitsu as they have the best "no compromise" electronics built in so they never fail. New Home edition stuff is way to weak and to slow and to ...... not usable for anything but word processing.

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

More
17 Jun 2020 10:02 - 17 Jun 2020 10:02 #171899 by seuchato
Tommy
Thanks a ton, so I'll leave the PC data stuff untouched for the time being.

I'll add:
  • choice of base thread or no base thread
  • choice of time to run
  • option to quit
  • firefox as default browser
  • option for base thread at 100000

Once this is done, I think this should be entered in a new thread, describing things a bit. What do you think?
Greez
chris
Last edit: 17 Jun 2020 10:02 by seuchato.

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

More
17 Jun 2020 10:30 #171900 by tommylight
That would be awesome.
Thank you.

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

More
17 Jun 2020 18:34 #171916 by seuchato
any arguments against using dialog?

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

Time to create page: 0.205 seconds
Powered by Kunena Forum