Strange jitter values
30 Oct 2014 06:07 #52559
by MrkiMedo
Strange jitter values was created by MrkiMedo
So,
I have decided to try my luck with another machine, IBM with single core Pentium IV @3Ghz 512MB RAM, built in video. I was thinking to increase RAM to 1G, and put some PCI video card. The good news is that realtime works ok on it. But latency tests look quite strange.
After quick test main thread jitter seems if not good, than potentially acceptable at 20.000 - 30.000 nanoseconds. But 1ms servo thread has 0.6ms (600.000ns) jitter! An it is not that every 60 secs comes one bad interval, but it continuously run 1ms interval in 1.6ms.
I have been looking at table with results of various machines, and they all seem to have jitter on main and servo thread in the same order of magnitude, but this machine has 10 times larger jitter in slow thread than in the fast main one
Did someone had similar experience?
I have decided to try my luck with another machine, IBM with single core Pentium IV @3Ghz 512MB RAM, built in video. I was thinking to increase RAM to 1G, and put some PCI video card. The good news is that realtime works ok on it. But latency tests look quite strange.
After quick test main thread jitter seems if not good, than potentially acceptable at 20.000 - 30.000 nanoseconds. But 1ms servo thread has 0.6ms (600.000ns) jitter! An it is not that every 60 secs comes one bad interval, but it continuously run 1ms interval in 1.6ms.
I have been looking at table with results of various machines, and they all seem to have jitter on main and servo thread in the same order of magnitude, but this machine has 10 times larger jitter in slow thread than in the fast main one
Did someone had similar experience?
Please Log in or Create an account to join the conversation.
30 Oct 2014 14:00 #52563
by ArcEye
Replied by ArcEye on topic Strange jitter values
Hi,
Read my FAQs here www.linuxcnc.org/index.php/english/forum/18-computer
on the latency problem and some solutions.
In particular do the lspci print and check the chipset against the table of chips with smi issues.
You can see exactly when spikes are occurring, using the realtime latency test from a terminal, as described on the FAQs
Based on what little detail you give, 60 sec episodes sound like smi, but you also need to disable all hyperthreading, power management etc, especially fan speed control (set to max all the time), to be sure.
regards
Read my FAQs here www.linuxcnc.org/index.php/english/forum/18-computer
on the latency problem and some solutions.
In particular do the lspci print and check the chipset against the table of chips with smi issues.
You can see exactly when spikes are occurring, using the realtime latency test from a terminal, as described on the FAQs
Based on what little detail you give, 60 sec episodes sound like smi, but you also need to disable all hyperthreading, power management etc, especially fan speed control (set to max all the time), to be sure.
regards
Please Log in or Create an account to join the conversation.
30 Oct 2014 14:51 #52566
by MrkiMedo
thank you, I will run lscpi when I am back at machine, and I have read the latency FAQs.
The problem does not look like SMI, since it does not occur ever 60 or something seconds, but it seems that every servo thread period lasts 1.6ms instead of 1ms (the third column duration of last period constantly displays 1.6ms), while base thread seems semi decent. It does look out of common reported problem set to me.
I have not seen BIOS option to switch off hyper threading, and the fan has settings silent-auto-performance and I have set it to performance which should be highest setting. I have some poking options in power management left but they do not seem very promising since this is desktop machine intended to be run continously (POS).
Other than that I can try the separate video card and increase RAM, but before spending some money on those two I was curious if someone else has seen such strange latency pattern (every period of slow servo thread missing a beat by huge amount, and relatively decent basic thread).
Replied by MrkiMedo on topic Strange jitter values
Hi,
Read my FAQs here www.linuxcnc.org/index.php/english/forum/18-computer
on the latency problem and some solutions.
In particular do the lspci print and check the chipset against the table of chips with smi issues.
You can see exactly when spikes are occurring, using the realtime latency test from a terminal, as described on the FAQs
Based on what little detail you give, 60 sec episodes sound like smi, but you also need to disable all hyperthreading, power management etc, especially fan speed control (set to max all the time), to be sure.
regards
thank you, I will run lscpi when I am back at machine, and I have read the latency FAQs.
The problem does not look like SMI, since it does not occur ever 60 or something seconds, but it seems that every servo thread period lasts 1.6ms instead of 1ms (the third column duration of last period constantly displays 1.6ms), while base thread seems semi decent. It does look out of common reported problem set to me.
I have not seen BIOS option to switch off hyper threading, and the fan has settings silent-auto-performance and I have set it to performance which should be highest setting. I have some poking options in power management left but they do not seem very promising since this is desktop machine intended to be run continously (POS).
Other than that I can try the separate video card and increase RAM, but before spending some money on those two I was curious if someone else has seen such strange latency pattern (every period of slow servo thread missing a beat by huge amount, and relatively decent basic thread).
Please Log in or Create an account to join the conversation.
11 Nov 2014 18:55 #53009
by MrkiMedo
Replied by MrkiMedo on topic Strange jitter values
So, here is the progress, or lack of it
I have managed to switch off hypethreading, ant his has halved jitter in servo thread from cca 600.000 to 300.000
Other than that I have installed 1Gb ram, which did not have noticeable effect.
Regarding SMI, I have included smi module in config file as described but it did not have noticeable effect.
Turned off pretty much everything in BIOS that was related to power saving and or ventilator.
As I said befor, funny thing is that every single period of servo thread seems to be late by that jitter value.
So my question is now, is jitter in servo thread important if I am going to use steppers? I get modestly decent jitter values in basic thread of 30.000ns when I leave it to run overnight.
I have managed to switch off hypethreading, ant his has halved jitter in servo thread from cca 600.000 to 300.000
Other than that I have installed 1Gb ram, which did not have noticeable effect.
Regarding SMI, I have included smi module in config file as described but it did not have noticeable effect.
Turned off pretty much everything in BIOS that was related to power saving and or ventilator.
As I said befor, funny thing is that every single period of servo thread seems to be late by that jitter value.
So my question is now, is jitter in servo thread important if I am going to use steppers? I get modestly decent jitter values in basic thread of 30.000ns when I leave it to run overnight.
Please Log in or Create an account to join the conversation.
11 Nov 2014 22:24 #53017
by PCW
Replied by PCW on topic Strange jitter values
Servo thread jitter is important for step/dir signal generation because the step generation software
checks the step count against the desired position every servo thread. If you have 30% servo thread timing errors (300 usec)
the stepgenerator will try and make large corrections that will interfere with smooth step generation
checks the step count against the desired position every servo thread. If you have 30% servo thread timing errors (300 usec)
the stepgenerator will try and make large corrections that will interfere with smooth step generation
Please Log in or Create an account to join the conversation.
11 Nov 2014 23:19 #53020
by MrkiMedo
so it seems I am about to go shopping for third machine in a row.
Replied by MrkiMedo on topic Strange jitter values
Servo thread jitter is important for step/dir signal generation because the step generation software
checks the step count against the desired position every servo thread. If you have 30% servo thread timing errors (300 usec)
the stepgenerator will try and make large corrections that will interfere with smooth step generation
so it seems I am about to go shopping for third machine in a row.
Please Log in or Create an account to join the conversation.
Time to create page: 0.120 seconds