debmatic in VirtualBox und hohe CPU-Auslastung

Debian/Ubuntu basierte CCU

Moderator: Co-Administratoren

warp10
Beiträge: 17
Registriert: 29.12.2017, 21:59
Hat sich bedankt: 1 Mal

Re: debmatic in VirtualBox und hohe CPU-Auslastung

Beitrag von warp10 » 19.02.2020, 13:35

So hab mal ein bissel geschaut woher die hohe System-load kommt:

Code: Alles auswählen

$ procinfo -H
Memory:        Total        Used        Free     Buffers                       
RAM:       984.91MiB   767.91MiB   216.99MiB    25.43MiB                       
Swap:      947.23MiB    34.40MiB   912.83MiB                                   

Bootup: Tue Feb 18 17:42:56 2020   Load average: 1.22 1.49 1.50 1/299 13664    

user  :      00:20:53.36   0.9%  page in :          1661861                    
nice  :      00:00:43.20   0.0%  page out:          1744408                    
system:      00:27:42.01   1.2%  page act:           199821                    
IOwait:      00:00:50.05   0.0%  page dea:           260024                    
hw irq:      00:00:00.00   0.0%  page flt:          7546360                    
sw irq:      00:04:34.49   0.2%  swap in :              712                    
idle  :   1d 13:41:09.11  95.1%  swap out:             8949                    
uptime:      19:45:24.21         context :        189840739                    

irq   1:        207  1-edge i8042        irq  27:          0  65537-edge xhci_h
irq   6:          3  6-edge floppy       irq  28:          0  65538-edge xhci_h
irq   8:          0  8-edge rtc0         irq  29:          0  49152-edge virtio
irq   9:          0  9-fasteoi acpi      irq  30:    2232364  49153-edge virtio
irq  11:         32  11-fasteoi virtio   irq  31:         35  49154-edge virtio
irq  12:         32  12-edge i8042       irq  32:          0  163840-edge virti
irq  14:     141282  14-edge ata_piix    irq  33:          0  163841-edge virti
irq  15:          0  15-edge ata_piix    irq  34:          0  163842-edge virti
irq  24:          0  81920-edge virtio   irq  35:      59745  163843-edge virti
irq  25:       5595  81921-edge virtio   irq  36:      49231  163844-edge virti
irq  26:   70563520  65536-edge xhci_h                                         

sr0               46r               0w   sda            64849r           82955w

docker0     TX 716.56KiB     RX 2.09MiB       lo           TX 64.47MiB      RX 64.47MiB     
ens3        TX 139.83MiB     RX 382.76MiB     veth766f056  TX 717.48KiB     RX 2.11MiB
Man beachte die Zeile:

Code: Alles auswählen

irq  26:   70563520  65536-edge xhci_h 
Wie vermutet hat es also etwas mit dem USB Controller zu tun.

Code: Alles auswählen

$ lsusb -t
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M
    |__ Port 1: Dev 2, If 0, Class=Vendor Specific Class, Driver=hb_rf_usb, 12M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
    |__ Port 1: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 12M
Da die VM auf USB2.0 steht, ist der hub mit 480M angebunden, die Platine natürlich nur mit 12M. Warum dadurch eine hohe IRQ-Rate zustande kommt ist mir allerdings nicht klar. Vielleicht lässt sich mit Kernelparametern oder durch das Blacklisting von Modulen der Hub auf USB 1.1 zwingen?

Cheers, Thorsten

warp10
Beiträge: 17
Registriert: 29.12.2017, 21:59
Hat sich bedankt: 1 Mal

Re: debmatic in VirtualBox und hohe CPU-Auslastung

Beitrag von warp10 » 29.02.2020, 22:40

Hat jemand einen Tipp für mich?

degudejung
Beiträge: 20
Registriert: 04.02.2020, 16:15
Hat sich bedankt: 3 Mal
Danksagung erhalten: 1 Mal

Re: debmatic in VirtualBox und hohe CPU-Auslastung

Beitrag von degudejung » 14.03.2020, 23:32

Leider habe ich keine Antwort für Dich, ich reihe mich aber gerne mit dem sehr ähnlichen Phänomen ein:

Setup
- MacMini i5 (5. Gen), 16 GB DDR3, SSD, USB 3.0 Ports, macOS 10.15.3 als Host
- VirtualBox 6.0.18 als Virtualisierer
- Gast-OS: 1 Kern, 500 MB RAM, USB 2.0, Alexander Reinerts USB-Platine HB-RF-USB durchgeleitet, Debmatic auf Debian 10.3, Firmware 3.51.6.42

Debmatic läuft völlig problemlos (auch mit nur 500 MB RAM statt 1 GB und nur einem Kern). (h)top zeigt typischerweise 4-8% CPU-Last. "Von außen" betrachtet allerdings, also aus Sicht von macOS liegt die VM bei 45-50% CPU-Last. Deaktiviere ich den USB-Anschluss in VirtualBox, liegt die CPU-Last sofort bei < 10% - aber dann klappt natürlich das über USB angeschlossene Funkmodul nicht mehr. Eine Umstellung vom Standard USB 2.0 EHCI auf 1.0 OHCI bringt entgegen der Schilderung hier keine messbare Veränderung, ein Wechsel zu 3.0 xHCI dagegen lässt die CPU-Last auf > 100% ansteigen.

Wenn es sein muss, kann ich mit den 50% CPU-Last leben, da scheint aber etwas nicht zu stimmen und lieber würde ich Rechner natürlich schonen (und meine Stromrechnung...).

Jemand noch eine kluge Idee?

Hier ein Auszug aus top auf Level des Gasts:

Code: Alles auswählen

top - 23:31:14 up 18 min,  1 user,  load average: 0,00, 0,02, 0,00
Tasks:  76 total,   1 running,  75 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0,4 us,  0,7 sy,  0,0 ni, 98,9 id,  0,0 wa,  0,0 hi,  0,0 si,  0,0 st
MiB Mem :    483,4 total,      9,2 free,    234,1 used,    240,1 buff/cache
MiB Swap:   1022,0 total,   1021,0 free,      1,0 used.    235,3 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND                                                                                                                               
  775 root      20   0 2244660 165248  27560 S   3,7  33,4   0:54.37 java                                                                                                                                  
  721 root      20   0    7936   2700   2520 S   2,0   0,5   0:20.90 multimacd                                                                                                                             
    1 root      20   0   22004   9972   7880 S   0,0   2,0   0:00.99 systemd                                                                                                                               
    2 root      20   0       0      0      0 S   0,0   0,0   0:00.00 kthreadd                                                                                                                              
    3 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 rcu_gp                                                                                                                                
    4 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 rcu_par_gp                                                                                                                            
    6 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kworker/0:0H-kblockd                                                                                                                  
    8 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 mm_percpu_wq                                                                                                                          
    9 root      20   0       0      0      0 S   0,0   0,0   0:00.06 ksoftirqd/0                                                                                                                           
   10 root      20   0       0      0      0 I   0,0   0,0   0:00.39 rcu_sched                                  
   

schicki
Beiträge: 2
Registriert: 30.03.2020, 09:09

Re: debmatic in VirtualBox und hohe CPU-Auslastung

Beitrag von schicki » 30.03.2020, 09:28

Ich habe hier eine VM mit debmatic in Proxmox laufen und kann die hohe CPU Auslastung bestätigen.

Beim Durchreichen des HB-RF-USB steht mir die Option USB3 zur Verfügung.
USB3 aus -> ~10% CPU Last auf zwei Kernen
USB3 ein -> ~20% CPU Last auf zwei Kernen

Leider habe ich keine Möglichkeit gefunden, den USB Port auf 1.1 zu beschränken.

Zum Testen hatte ich dann gestern noch den USB Port mittel USB/IP am Host freigeben und in der VM eingebunden.
Die USB Kommunkation läuft dabei über das Netzwerk.
Aber auch hier liegt die CPU Auslastung bei ~15%.

Ich werde in den nächsten Tagen versuchen debmatic in einem Container (LXC) zum Laufen zu bekommen.
Eventuell verbessert sich dabei etwas an der CPU Last.
Außer jemand hat schon Erfahrungen damit gemacht?

schicki
Beiträge: 2
Registriert: 30.03.2020, 09:09

Re: debmatic in VirtualBox und hohe CPU-Auslastung

Beitrag von schicki » 04.04.2020, 19:30

Ich habe heute den LXC Container mit debmatic in Proxmox erstellt.

Funktioniert problemlos und die CPU Auslastung liegt meist bei 1%.

Grundsätzlich würde ich die VM Lösung bevorzugen, da es mir nicht gefällt Kernelmodule am Host zu installieren.
Aber die CPU Auslastung finde ich so besser.

ayngush
Beiträge: 345
Registriert: 02.02.2012, 12:05
Danksagung erhalten: 7 Mal

Re: debmatic in VirtualBox und hohe CPU-Auslastung

Beitrag von ayngush » 07.04.2020, 12:02

Hallo,

ich habe Debmatic bei mir gerade neu aufgesetzt.

Intel NUC 8i3BEH
Proxmox VE 6.1-8
Debian 10.2 VM (4 Cores, 2 GB RAM)
HM-RF-USB-TK
HM-MOD-RPI-PCB (das kleine Modul)

Nach der Umstellung USB3=1 auf USB3=0 (also USB2) ist die durchschnittliche CPU-Last von ~6% auf ~3% gefallen und liegt damit im Bereich meiner anderen VM im Idle.
Abfall der Auslastung nach Umstellung:
2020-04-07_115740.png
2020-04-07_115740.png (12.91 KiB) 1856 mal betrachtet
Klar, die LXC / Container sind da etwas sparsamer aber insgesamt ist das alles noch im Rahmen für folgende Umgebung:
2020-04-07_120018.png
2020-04-07_120018.png (5.06 KiB) 1856 mal betrachtet
Gesamtauslastung des Nodes:
2020-04-07_120003.png
2020-04-07_120003.png (16.27 KiB) 1856 mal betrachtet
Optionen der Debmatic-VM:
2020-04-07_115707.png
2020-04-07_115707.png (5.92 KiB) 1856 mal betrachtet
2020-04-07_115724.png
2020-04-07_115724.png (14.33 KiB) 1856 mal betrachtet
2020-04-07_115815.png
2020-04-07_115815.png (13.51 KiB) 1856 mal betrachtet
Schöne Grüße
... und bleibt gesund!

degudejung
Beiträge: 20
Registriert: 04.02.2020, 16:15
Hat sich bedankt: 3 Mal
Danksagung erhalten: 1 Mal

Re: debmatic in VirtualBox und hohe CPU-Auslastung

Beitrag von degudejung » 08.12.2021, 10:15

warp10 hat geschrieben:
29.02.2020, 22:40
Hat jemand einen Tipp für mich?
@warp10 hast du hier eigentlich mal eine Lösung gefunden? Ich hatte die hohe Last jetzt nochmal ein Jahr hingenommen aber jetzt, beim Neubau des Servers auf Debian 11 Basis und QEMU/KVM als Basis für eine VM für debmatic habe ich wieder das gleiche Problem. top in der VM zeigt 2-4% CPU-Last (natürlich völlig ok) aber top des Host-Servers zeigt, dass die CPU-Last des Host durch die VM sofort auf 30-40% ansteigt, sobald das HB-RF-USB verbunden wird.

Die o.g. Tipps habe ich auch bereits umgesetzt aber ohne den erwünschten Erfolg. Mittels

Code: Alles auswählen

virsh edit vm-name
habe ich den USB-Controller geändert von piix3-uhci zuerst hin zu piix4-uhci - ohne messbaren Effekt. Anschließend habe ich den Controller geändert zu ehci. Dann erhalte ich beim Starten der VM folgende Fehlermeldung:

Code: Alles auswählen

root@omv:/etc/libvirt/qemu# virsh start vm_debmatic
error: Failed to start domain vm_debmatic
error: internal error: qemu unexpectedly closed the monitor: qemu-system-x86_64: -realtime mlock=off: warning: '-realtime mlock=...' is deprecated, please use '-overcommit mem-lock=...' instead
2021-12-08T10:00:48.476193Z qemu-system-x86_64: -device usb-host,hostbus=3,hostaddr=7,id=hostdev0,bus=usb.0,port=1: Warning: speed mismatch trying to attach usb device "HB-RF-USB" (full speed) to bus "usb.0", port "1" (high speed)
2021-12-08T10:00:48.676746Z qemu-system-x86_64: -device usb-host,hostbus=3,hostaddr=7,id=hostdev0,bus=usb.0,port=1: failed to open host usb device 3:7
Auch die anderen Optionen "piix3-uhci", "piix4-uhci", "ehci", "ich9-ehci1", "ich9-uhci1", "ich9-uhci2", "ich9-uhci3", "vt82c686b-uhci", "pci-ohci" und "qemu-xhci" für den USB-Controller habe ich durchprobiert. Bei einigen war die Host-CPU-Last sogar noch deutlich höher, so dass ich am Ende wieder zurück zu "piix3-uhci" gegangen bin.

Ich weiß, der Thread ist schon bisschen älter. Aber es scheint, als sei das Problem noch immer aktuell und eine Lösung habe ich noch in nicht gefunden. Habe ich was übersehen?

Benutzeravatar
eiGelbGeek
Beiträge: 979
Registriert: 24.07.2014, 17:46
Wohnort: Ruhrpottrandgebiet
Hat sich bedankt: 105 Mal
Danksagung erhalten: 19 Mal

Re: debmatic in VirtualBox und hohe CPU-Auslastung

Beitrag von eiGelbGeek » 09.12.2021, 23:04

Also auf meiner Synology kann ich deine Probleme nicht nachstellen.
Bildschirmfoto 2021-12-09 um 23.03.22.png
Nur weil es nicht geht, muss es nicht kaputt sein ^^

Apple for Work, Linux for Network, iOS for Mobility and still Windows for Solitaire

Antworten

Zurück zu „debmatic“