Latency, error finishing read, and IRQ affinity

More
20 Apr 2024 10:28 #298713 by tommylight
sudo chmod 777 rt_setup.sh
sudo chmod a+x rt_setup.sh
I think ...
The following user(s) said Thank You: jg00163206

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

More
20 Apr 2024 19:41 #298748 by jg00163206
i changed the permissons on the file. i am refering to, in the file it states; "by default this program does nothing. change the exicution bits to run this file' or something along those lines. ill post an error report next time i am in front of it.

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

More
20 Apr 2024 21:56 #298751 by PCW
I should note that the rt_setup.sh depends on the host Ethernet port being setup in the interfaces file
and that the IP addresses in rt_setup.sh must match the host IP address setup there.

as far as permissions go, all that's needed is

chmod +x   rt_setup.sh
and then
sudo ./rt_setup.sh
The following user(s) said Thank You: zmrdko

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

More
22 Apr 2024 01:09 #298809 by jg00163206
i didn't get that pc working but i have a duo core laptop that i have it up and running on. i had it working on 2.8 at one point but my hardware configuration doesn't seem to like 2.9. i had issues with 2.9 when i first started researching linuxcnc so i switched back to 2.8 but i can't seem to get it working the way i had it. im going to remove and all the extra hardware from that pc and see if i can't install them one by one and pin point the issue. i get a journalctl error when i go through all the steps on the first page and when i run sudo ./rt_setup.sh, i get command not found. even thou i went through and setup the ethernet correctly and am able to ping the mesa 7i96s and get output from mesaflash. i created the file, made it exicutable and i still get the errors. the only pc i was able to get it work on was the duo core just to see if it was me or the machine. the service didn't run because it said i only had two cores but i didn't get the same error i get on two other four core machines. at this point, as long as it runs on the laptop i can work on the other machines at a later time and try to figure out my issues. thank you guys for all your help. it wont be the last time i need you, im sure. right now, i need some example hal and ini files to work with my drivers and servo as spindle. but ill start a new thread if my searching turns up empty
The following user(s) said Thank You: tommylight

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

More
01 May 2024 18:37 #299496 by hachi
Is there any clear benefit or drawback to isolating extra cpus and then pinning the mesa ethernet to something other than the last one?

Also is there a way to configure which CPU LinuxCNC (I assume motmod?) pins to?

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

More
02 May 2024 00:16 #299518 by PCW
AFAIK LinuxCNC always pins itself to the highest numbered CPU

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

More
02 May 2024 08:07 #299531 by rodw

Is there any clear benefit or drawback to isolating extra cpus and then pinning the mesa ethernet to something other than the last one?

Also is there a way to configure which CPU LinuxCNC (I assume motmod?) pins to?

Probably eye candy because isolating more cores gives better looking  (faster) latency-histograms.
But with a Mesa card, the key paramater is the network latency, not the CPU latency.

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

More
02 May 2024 11:55 #299543 by mozmck
PCW is right - LinuxCNC always pins itself to the highest numbered CPU. The only benefit to isolating other cores as far as I know is to isolate any cores that share cache with the highest numbered core. The script does this automatically.

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

More
11 May 2024 14:47 #300389 by Swag
I've gone through this thread and used the script, made the obvious mistakes of not having irqbalancer installed and having the wrong ip (10.10.10.1 instead of 10.10.10.11) in the script.  I've fixed all that, but I am still having a near immediate error when I start of Unexpected realtime delay on task 0 with period 1000000 followed by a hm2/hm2_7i76e.0: Smart Serial Port 0: Doit not cleared from previous servo thread....

I can move the machine around and run the spindle (modbus issues resolved with group admission change), but after a short while I get an error finishing read and the machine goes in to fault.

The hardware was all working with 2.8, so I don't think there is something that has died as it will all still work in 2.8, it's just this realtime delay issue.  I hate to bug anyone with this as I feel like I just haven't done enough due diligence, but this thread seems to be hitting all the high spots related to latency and I have not managed to resolve it.  Any help would be greatly appreciated.

Kind regards,

Sam

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

More
12 May 2024 09:31 #300431 by Swag
I've now gone through the BIOS and think I have everything set as it should be and there is no change. Also had it allocate a fixed RAM for the onboard graphics since it sort of felt like the error would happen more quickly if I resized the linuxcnc window, but I don't think that was anything more than coincidence. Ping looks fine. I think the latency seems fine.
p2user@P2CNC:~$ ping 10.10.10.10
PING 10.10.10.10 (10.10.10.10) 56(84) bytes of data.
64 bytes from 10.10.10.10: icmp_seq=1 ttl=64 time=0.175 ms
64 bytes from 10.10.10.10: icmp_seq=2 ttl=64 time=0.250 ms
64 bytes from 10.10.10.10: icmp_seq=3 ttl=64 time=0.111 ms
64 bytes from 10.10.10.10: icmp_seq=4 ttl=64 time=0.104 ms
64 bytes from 10.10.10.10: icmp_seq=5 ttl=64 time=0.103 ms
64 bytes from 10.10.10.10: icmp_seq=6 ttl=64 time=0.103 ms
64 bytes from 10.10.10.10: icmp_seq=7 ttl=64 time=0.105 ms
64 bytes from 10.10.10.10: icmp_seq=8 ttl=64 time=0.102 ms
^C
--- 10.10.10.10 ping statistics ---
8 packets transmitted, 8 received, 0% packet loss, time 7146ms
rtt min/avg/max/mdev = 0.102/0.131/0.250/0.050 ms

ip setup seems similar to others with working setups and the correct IP address is being used in the script.
p2user@P2CNC:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host noprefixroute 
       valid_lft forever preferred_lft forever
2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 70:85:c2:ad:9e:e6 brd ff:ff:ff:ff:ff:ff
    inet 10.10.10.11/8 brd 10.255.255.255 scope global noprefixroute enp2s0
       valid_lft forever preferred_lft forever
3: enx0022cfe5777f: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:22:cf:e5:77:7f brd ff:ff:ff:ff:ff:ff
    inet 192.168.178.145/24 brd 192.168.178.255 scope global dynamic noprefixroute enx0022cfe5777f
       valid_lft 862956sec preferred_lft 862956sec
    inet6 2003:d3:f30:2b00:30fc:d47e:260c:1afb/64 scope global temporary dynamic 
       valid_lft 7152sec preferred_lft 1105sec
    inet6 2003:d3:f30:2b00:222:cfff:fee5:777f/64 scope global dynamic mngtmpaddr noprefixroute 
       valid_lft 7152sec preferred_lft 1105sec
    inet6 fe80::222:cfff:fee5:777f/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

Again this all works fine with debian 10 and linuxcnc 2.8.  I am kind of at a loss at this point, though I feel like this is some simple config problem that I am overlooking.

 
Attachments:

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

Time to create page: 0.123 seconds
Powered by Kunena Forum