General questions on best method for installing Linuxcnc for software stepping.

More
18 Dec 2016 08:21 #84354 by MDM3D
Hello Linuxcnc Forum,
My name is Nick and am attempting to do a clean installation of linuxcnc to a Dell Optiplex 780 SFF. The specs are a Q6600 Core 2 Quad, a radeon 4650 graphics card and, 12GB DDR3 ram. This configuration appears to show some promise for software stepping based on the linuxcnc latency test scores posted. I tried the latency test on the default wheezy 2.7 and saw on average low latency 5us but random peaks of up to 100us when running for an hour or more which is no good. I have been reading about x86 pae and amd64 build variants and the differences between the RTAI and Preempt-RT kernels but I can't seem to find or maybe understand whether or not amd64 is actually supported. Some articles on the forum say that amd64 is buggy and yet the buildbot website shows that debian 8 will work with preempt-rt.

The basic question is what version of linux os(x86pae/amd64) would you recommend for software stepping and which kernel, along with which version of linuxcnc vs 2.7 or 2.7.8?

I am slightly familiar with linux mint and would greatly prefer to use it's ui over say Ubuntu but step rate is key. I need at least a 20Khz step rate for my machine to function properly 30Khz would be ideal.

I am coming from tinyg2 and chilipepper but I am trying to run highspeed adaptive toolpaths(large gcode files) and chillipepper freaks out about chrome not having enough memory despite GB's of excess ram. and just dripping the gcode file through coolterm really sucks with its lack of control. I have read great things about linuxcnc and it seems to be better than tinyg2 in every way except for 2 points, step rates and 3rd order motion planning. The arduino due is good for 200Khz and buttery smooth motion just the ui cripples it.

thanks for your help and advice.
Attachments:

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

More
18 Dec 2016 12:49 #84358 by tommylight
I had one of those computers awhile back, was running 10.04 ubuntu with 2.7 version of linuxcnc and i can not remeber having any problem with it , but i had to change the graphic card ( had a quadro something from nvidia). Later found out that it will work quite nicely with nvidia but without the proprietary driver, as the nvidia driver tenda to do powersaving and switches core and memory speeds a lot.
This is valid for all computers:
HDD will cause latency spikes!!!
So having an SSD helps a lot, also using a USB to run Linuxcnc will produce lower latency times (i find this strange as USB is much slower).
I have tested this on over 20 computers as i decide on buying computers by testing the latency running from USB, and got surprised several times after installing it on HDD and getting bigger latency numbers.
Back to your actual system, try the 10.04 iso, if you are satisfied with the numbers you can upgrade Linuxcnc to version 2.7.8 or one version of 2.8pre, the only thing missing will be joint/axis support. I have this (2.8pre) running on an Asus P5B Deluxe board for quite some time now, it does 50kHz nicely. I use the built in RAID controller for the HDD's in raid 0 configuration.
I never tested the 64 bit version on the Dell so i do not know what latency numbers it would do.
The following user(s) said Thank You: MDM3D

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

More
18 Dec 2016 14:04 #84360 by MDM3D
Thanks for the reply. By 10.04 you mean ubuntu 10.04 LTS right or am I missing something?

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

More
18 Dec 2016 14:31 #84362 by tommylight
Yes, ubuntu 10.04 LTS Linuxcnc version. I really like to use this version on all my machines, except the ones i use for experimenting.

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

More
20 Dec 2016 13:35 - 20 Dec 2016 13:42 #84454 by MDM3D
Okay so over the past couple of days I have tried the wheezy 2.7 x86 iso, the ubuntu 10.04 lts x86 iso, a netiso install of debian jessie x64 with 2.7.8 with preempt-rt, and last night/ early this morning I did a clean install of linux mint followed by bigJohnT's commands to install 2.7.8 with rtai 3.4.6 pae x86. The highest jitter is around 40us with the the wheezy iso, ubuntu and jessie seem to be stable around 33us and surprisingly the mint install is the the fastest with a jitter of around 28us. However 28 us is marginal and leaves almost no fudge factor. Everything i have read about optimizing a quad core seem to only use a single core using isolcpu grub commands so before i go down that path I have one last hardware trick up my sleeve. I have a core2duo E8500 would you think that this cpu would perform better out of the box or would it preform worse because it has less L2 cache overall?. the Q6600 has 8Mb of L2 cache but I "think" it is spread among the 4 cores. however the E8500 has 6Mb of L2 but only 2 cores? Again I don't fully understand anything about this plays any effect but I figured you might have a suggestion. Unfortunately the SFF case can only fit half height graphics cards and the only two cards I have in my possession are ati/amd. I have not yet tried tweaking any other profiles. Hopefully I can come up with a hardware combo that will provide 20 to 25 us of max jitter.
Last edit: 20 Dec 2016 13:42 by MDM3D.

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

More
20 Dec 2016 14:04 - 20 Dec 2016 14:05 #84462 by Todd Zuercher
On a q6600 you may want to try adding a graphics card, or trying a different one if you already have one. It can also be worthwhile to experiment with different settings for isolcpus (0 or 1 or 2 or 3 or 0,1 or 2,3 or 0,1,2 or 1,2,3) to see what works best for your system. The one entry for a q6600 cpu in the latency test wiki , uses a Radeon card and isolcpus=3 and gets decent numbers. (but that is no guarantee that yours will.)
Last edit: 20 Dec 2016 14:05 by Todd Zuercher.

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

More
29 Dec 2016 01:41 #84832 by MDM3D
Thanks for the help Tommy and Todd. I found that my latency dropped to 5us when I turned on polling and I stopped there. I have finished hooking up the limit switches, coolant switch and spindle communication via rs485. Now to try and decipher how to get axis to talk to the spindle(wj200). I can enable and disable the drive using hal configuration window. But I cannot get set either a frequency or a rpm and this is just using command line I need to work on getting connected to the ui and or gcode control.

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

More
01 Jan 2017 01:15 #84980 by andypugh
Unless I misunderstand things, isolcpus doesn't turn off cores, it hides a core from the OS as a whole and lets the realtime system claim it to itself. So on a quad-core the OS thinks it is a 3-core system and uses those, and then the realtime system gets a dedicated core.

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

More
01 Jan 2017 22:00 #85039 by MDM3D
using isolcpus in any combination would give me a jitter of ~10 to 12 us for 99.99% of the time but every couple of minutes or so i would still get a large 30 to 40 us spike. So I turned off isolcpus completely and turned on polling and I now get a consistent 1 to 2 us jitter with occasional peaks of 5 to 6 us which is plenty fast.
The current configuration is awesome. Spindle control is down to the .1Hz with no hunting much better than using the pwm to analog method. rs485 and modbus for the win!!! estop and pause happen near instantaneously unlike tinyg2 which had to wait for the 32 move buffer to empty. no noise or lost steps. coolant is a little finicky because the pin toggles on startup so I get a short air blast every time I start linuxcnc. now need to learn about probing and hopefully mapping so that I can correct for the small amount of backlash and skew that my machine has. I think that my next step is to learn about gantrykins.c I tried using millkins.c to account for skew but couldn't get it to load with the latest dev version, I got it to compile though.

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

More
01 Jan 2017 22:12 #85041 by rodw

So I turned off isolcpus completely and turned on polling and I now get a consistent 1 to 2 us jitter with occasional peaks of 5 to 6 us which is plenty fast.


Could you explain where this setting is? I'm still coming to grips with Linux.

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

Time to create page: 0.100 seconds
Powered by Kunena Forum