Ethercat random jitter fix

More
6 months 3 weeks ago #345317 by rodw
Replied by rodw on topic Ethercat random jitter fix

I'm also on the discord, and I am fluent in Italian 

discord.gg/WwMfD9v9M

If your Italian friend wants to hop in, I'll be glad to help him out.
Thanks I've passed that on. He'll probably call himself frk (Francesco)

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

More
6 months 3 weeks ago #345318 by rodw
Replied by rodw on topic Ethercat random jitter fix

I've used debian 10 11 and 13
I skipped debian 12 this is for internal timing release reasons, not because 12 had anything wrong with it. I did not notice on my hardware considerable differences between debian releases. 
I don't really see any difference between 12 & 13 (everything is 13 here). From earlier feedback on the preempt_rt email group, The preempt_rt network latency issues were most likely introduced in kernel 5.9 and Debian 11 had 5.10 but because Linuxcnc never released anything on 11, the issues did not  appear until Debian 12 which I used from the original beta release.

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

More
6 months 3 weeks ago #345353 by andrax
Replied by andrax on topic Ethercat random jitter fix
I found another clue.

A Google search for "Intel NIC interrupt moderation" yielded the following advice: this should be disabled, as it can also lead to jitter.

The Cause of Jitter: When enabled, the time between packet interrupts varies depending on traffic flow (sometimes fast, sometimes slow), causing inconsistent packet processing times.

That would at least be worth investigating.

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

More
6 months 3 weeks ago - 6 months 3 weeks ago #345355 by grandixximo
With ec_igb or ec_igc native driver: interrupt moderation is irrelevant, they use polling not interrupt.
With ec_generic: interrupt moderation is active and you should disable it with

ethtool -C <iface> adaptive-rx off rx-usecs 0 tx-usecs 0

probably as soon as possible on boot, before ethercat starts.
To know which drive you are using, check your erhercat.conf file
Last edit: 6 months 3 weeks ago by grandixximo.
The following user(s) said Thank You: NWE

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

More
6 months 3 weeks ago #345394 by rodw
Replied by rodw on topic Ethercat random jitter fix

With ec_igb or ec_igc native driver: interrupt moderation is irrelevant, they use polling not interrupt.
With ec_generic: interrupt moderation is active and you should disable it with

ethtool -C <iface> adaptive-rx off rx-usecs 0 tx-usecs 0

probably as soon as possible on boot, before ethercat starts.
To know which drive you are using, check your erhercat.conf file
You can use a udev rule to do this. we use one for ethercat to use as an example. You might be able to extend the ethercat script  to add ethtool commands for: 
<iface> gro off lro off tso off
-set-eee <iface> eee off
 

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

More
6 months 3 weeks ago #345400 by Hakan
Replied by Hakan on topic Ethercat random jitter fix
ec_generic doesn't add or remove any interrupt moderation.
ec_generic is just a layer on top of linux's normal network driver.
 

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

Time to create page: 0.080 seconds
Powered by Kunena Forum