Unexpected realtime delay on task 0 with period 1000000

More
2 years 11 months ago #285347 by Muecke
Hallo miteinander,

ich versuche gerade meine Anlage zu konfigurieren und bekomme folgende Fehler beim LinuxCNC Start angezeigt. Nicht bei jedem Start werden alle Fehler angezeigt.
Ich verstehe die Fehler nicht, was bedeuten diese?

Fehler 1:
Unexpected realtime delay on task 0 with period 1000000
This message will only display once per session.
Run the latency Test and resolve before continuing.

Fehler 2:
hm2/hm2_7i95.0: error finishing read! iter=161360

Fehler 3:
hm2/hm2_7i95.0: error finishing read! iter=3170

Fehler 4:
hm2/hm2_7i95.0: error finishing read! iter=3144

Fehler 5:
hm2/hm2_7i95.0: error finishing read! iter=267077

Fehler 5:
hm2/hm2_7i95.0: error finishing read! iter=110023

Gruß Mücke
 

Please Log in to join the conversation.

More
2 years 11 months ago #285354 by rmu
Das bedeutet dass der mesa hostmot treiber nicht schnell genug mit der 7i95 kommunizieren kann.

Checkliste:
* läuft rt preempt kernel?
* isolcpus (sinnvoll) gesetzt? (CPU / mainboard / system-abhängig)
* bei intel netzwerk karten: coalesce irq gesetzt? www.linuxcnc.org/docs/devel/html/man/man9/hm2_eth.9.html
* bei realtek netzwerkkarte: r8168-dkms installieren und testen ob das einen Unterschied macht
* ansonsten eventuell andere Kernel-Version testen. ich hab eine maschine auf der funktioniert 4.19 von debian hevorragend, die neueren debian kernels gar nicht, ein selbst kompilierter 6.4.6-rt8 aber wieder noch besser als der 4.19er.

Please Log in to join the conversation.

More
2 years 11 months ago #285363 by tommylight
Latency fehler, was gibt beim
uname -a

Please Log in to join the conversation.

More
2 years 11 months ago #285365 by Muecke

Das bedeutet dass der mesa hostmot treiber nicht schnell genug mit der 7i95 kommunizieren kann.
Ok, für mich der nicht so Fit in dem ganzen ist.
Der Treiber (auf dem Rechner) ist für die Mesakarte (Hardware) zu langsam.

Checkliste:
* läuft rt preempt kernel?
Meinst du das?
Code:
cnc@debian:~$ uname -r 6.1.0-13-rt-amd64

* isolcpus (sinnvoll) gesetzt? (CPU / mainboard / system-abhängig)
Ich habe keine Vorstellung davon was du damit meinst, was ist "isolcpus"?

* bei intel netzwerk karten: coalesce irq gesetzt? www.linuxcnc.org/docs/devel/html/man/man9/hm2_eth.9.html
* bei realtek netzwerkkarte: r8168-dkms installieren und testen ob das einen Unterschied macht
Wie finde ich das raus?
Die Karte, die ich für die Maschine verwende, ist die Onbort Netzwerkkarte

* ansonsten eventuell andere Kernel-Version testen. ich hab eine maschine auf der funktioniert 4.19 von debian hevorragend, die neueren debian kernels gar nicht, ein selbst kompilierter 6.4.6-rt8 aber wieder noch besser als der 4.19er.
Hmm, noch was das ich nicht verstehe wie man so was machen würde.
Wie aufwändig oder Komplex ist das? ich tue mich mit Linux im algemeinen echt sehr schwer. :-(


Grob zusammen gesetzt, die Neue ISO mit LinuxCNC 2.9 hat einer anderen Kernel-Version vor installiert wie die ISO LinuxCNC 8.. version.
Wenn ich wieder auf die alte ISO zurück gehe sind voraussichtlich die Probleme nicht mehr vorhanden?

Code:
Latency fehler, was gibt beim uname -a [/quote] [code]cnc@debian:~$ uname -a Linux debian 6.1.0-13-rt-amd64 #1 SMP PREEMPT_RT Debian 6.1.55-1 (2023-09-29) x86_64 GNU/Linux


[EDIT]
im Anhang meine, nicht im Ansatz fertige INI und HAL
INI:

Attachment not found


HAL:

Attachment not found

Please Log in to join the conversation.

More
2 years 11 months ago #285367 by tommylight
Was fuhr ein rechner?
Im BIOS auschalten:
hyperthreading
power saving
SATA power management
C states
Turbo mode
Virtualisation

Please Log in to join the conversation.

More
2 years 11 months ago #285369 by Muecke

Was fuhr ein rechner?
Du kannst Fragen stellen, sie sehen alle gleich aus für mich. ;-)

Motherbord Info
Code:
Return Code: 0 # dmidecode 3.4 Getting SMBIOS data from sysfs. SMBIOS 3.0.0 present. Handle 0x003B, DMI type 2, 15 bytes Base Board Information Manufacturer: FUJITSU Product Name: D3400-A1 Version: S26361-D3400-A1 Serial Number: 51801751 Asset Tag: Features: Board is a hosting board Board is replaceable Location In Chassis: Chassis Handle: 0x0003 Type: Motherboard Contained Object Handles: 0

CPU Info
Code:
Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Address sizes: 39 bits physical, 48 bits virtual Byte Order: Little Endian CPU(s): 4 On-line CPU(s) list: 0-3 Vendor ID: GenuineIntel Model name: Intel(R) Core(TM) i3-6100 CPU @ 3.70GHz CPU family: 6 Model: 94 Thread(s) per core: 2 Core(s) per socket: 2 Socket(s): 1 Stepping: 3 CPU(s) scaling MHz: 73% CPU max MHz: 3700,0000 CPU min MHz: 800,0000 BogoMIPS: 7399,70 Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d arch_capabilities Virtualization: VT-x L1d cache: 64 KiB (2 instances) L1i cache: 64 KiB (2 instances) L2 cache: 512 KiB (2 instances) L3 cache: 3 MiB (1 instance) NUMA node(s): 1 NUMA node0 CPU(s): 0-3 Vulnerability Gather data sampling: Vulnerable: No microcode Vulnerability Itlb multihit: KVM: Mitigation: VMX disabled Vulnerability L1tf: Mitigation; PTE Inversion; VMX conditional cache flushes, SMT vulnerable Vulnerability Mds: Mitigation; Clear CPU buffers; SMT vulnerable Vulnerability Meltdown: Mitigation; PTI Vulnerability Mmio stale data: Mitigation; Clear CPU buffers; SMT vulnerable Vulnerability Retbleed: Mitigation; IBRS Vulnerability Spec rstack overflow: Not affected Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization Vulnerability Spectre v2: Mitigation; IBRS, IBPB conditional, STIBP conditional, RSB filling, PBRSB-eIBRS Not affected Vulnerability Srbds: Mitigation; Microcode Vulnerability Tsx async abort: Not affected

NIC Info
Code:
01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 0c) 02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)

Im BIOS auschalten:
hyperthreading
power saving
SATA power management
C states
Turbo mode
Virtualisation
Ich bin glücklich, dass ich das BIOS gestartet bekomme und auf USB Starten gestellt bekommen habe, damit ich das neue System installieren konnte.
Ich wüste nicht mal, was ich da genau suchen muss um es zu Deaktivieren etc.
Die Maschine hatte schon die ersten tests mit Linux 8... gemacht, da geb es diese Probleme nicht.

Please Log in to join the conversation.

More
2 years 11 months ago #285378 by rmu
Kernel scheint prinzipiell mal OK zu sein.

isolcpus ist ein Kernel-Parameter. "latency-histrogram" zeit an ob der gesetzt ist. Setzen tut man das in /etc/default/grub (GRUB_CMDLINE_LINUX="isolcpus=47" o.ä., statt 47 Anzahl der CPU Kerne minus 1 einsetzen z.B.) und Aufruf von sudo update-grub.

Netzwerk-Karte ist heutzutage eh der falsche Begriff. Info oben sagt es sind realtek chips, nicht intel. Also das DKMS probieren, einfach das Paket installieren. Falls das nichts ändert wird man das Paket mit Purge wieder los und bekommt den normalen realtek treiber wieder.

Please Log in to join the conversation.

More
2 years 11 months ago #285390 by Muecke
Kernel: Das interpretiere ich als Gute Nachrichten.

Latency Histrogram:
Im Latency Histrogram ist "no_isolcpus" hinterlegt.
[Latency_Histrogram_no_isolcpus_2023_11_14_17_12.png]

/etc/default/grub
Original:
Code:
# If you change this file, run 'update-grub' afterwards to update # /boot/grub/grub.cfg. # For full documentation of the options in this file, see: # info -f grub -n 'Simple configuration' GRUB_DEFAULT=0 GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet" GRUB_CMDLINE_LINUX="" # If your computer has multiple operating systems installed, then you # probably want to run os-prober. However, if your computer is a host # for guest OSes installed via LVM or raw disk devices, running # os-prober can cause damage to those guest OSes as it mounts # filesystems to look for things. #GRUB_DISABLE_OS_PROBER=false # Uncomment to enable BadRAM filtering, modify to suit your needs # This works with Linux (no patch required) and with any kernel that obtains # the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...) #GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef" # Uncomment to disable graphical terminal #GRUB_TERMINAL=console # The resolution used on graphical terminal # note that you can use only modes which your graphic card supports via VBE # you can see them in real GRUB with the command `vbeinfo' #GRUB_GFXMODE=640x480 # Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux #GRUB_DISABLE_LINUX_UUID=true # Uncomment to disable generation of recovery mode menu entries #GRUB_DISABLE_RECOVERY="true" # Uncomment to get a beep at grub start #GRUB_INIT_TUNE="480 440 1"
meine änderung:
GRUB_CMDLINE_LINUX="-1"

dann habe ich im Terminal
$ sudo update-grub
Code:
cnc@debian:~$ sudo update-grub [sudo] Passwort für cnc: Generating grub configuration file ... Found background image: /usr/share/images/desktop-base/desktop-grub.png Found linux image: /boot/vmlinuz-6.1.0-13-rt-amd64 Found initrd image: /boot/initrd.img-6.1.0-13-rt-amd64 Warning: os-prober will not be executed to detect other bootable partitions. Systems on them will not be added to the GRUB boot configuration. Check GRUB_DISABLE_OS_PROBER documentation entry. done cnc@debian:~$

Im Latency Histrogram ist immernoch "no_isolcpus" hinterlegt.

[Latency_Histrogram_no_isolcpus_2023_11_14_17_22.png]

Netzwerk-Karte
$ sudo apt-get install r8168-dkms
... das hat eine weile gedauert, doch es wurde etwas gemacht und ich habe als letzte Zeile bekommen:
E: Sub-process /usr/bin/dpkg returned an error code (1)
Was auch immer das bedeutet.

Habe mein LinuxCNC 2.9.1 erneut gestartet, aktuell bekomme ich diese Fehler nicht mehr angezeigt, habe ca. 10 bis 20 Mal LinuxCNC gestartet.

Jetzt bekomme ich einen anderen Fehler, der nicht in diese Reihe gehört würde ich sagen.


Fehler:
mhm2/hm2_7i95.0: stepgen.maxvel is too big for current step timings & position-scale, clipping to max possible

Verwundert bin ich schon etwas über diesen Fehler nun, denn current (Strom) habe ich gar nicht angegeben bei Schrittmotoren?

Und wenn ich den Motor bewegen möchte geht sofort der Fehler an:
Motor 0 Positionsfehler

Please Log in to join the conversation.

More
2 years 11 months ago #285391 by Muecke
Leider habe ich mich zu früh gefreut, ich habe einen Fehler erhalten:
hm2/hm2_7i95.0: error finishing read! iter=383982

Hmm, wie mache ich nun weiter?



Latency_Histrogram_no_isolcpus_2023_11_14_17_12.png
 

Attachment not found



Latency_Histrogram_no_isolcpus_2023_11_14_17_22.png
 

Attachment not found


 

Please Log in to join the conversation.

More
2 years 11 months ago #285392 by PCW
You should run the latency test without a base thread:

latency-histogram --nobase --sbinsize 1000

I would guess you still have some power management ( EIST, cstates > C1 , Turbo mode etc ) enabled

Please Log in to join the conversation.

Time to create page: 0.151 seconds
Powered by Kunena Forum