Hauptmenü

FHEM Träge / CPU Last

Begonnen von Nemo0815, 08 Januar 2016, 16:01:40

Vorheriges Thema - Nächstes Thema

Nemo0815

#15
Zeit müsste passen ja.

Ich habe jetzt mal Stück für Stück (nach Backup) alle Module gelöscht und die CPU Last getestet.

Dabei habe ich folgenden "Schuldigen" gefunden: SMLUSB

Wenn das Modul aktiv ist und Daten empfängt steigt die CPU Last des Raspi bis auf 50% und das System wird sehr träge. Habe 2 Solcher Module definiert, eines hängt am internen UART, eines an einem USB2RS232 Konvertert und beide lesen die Stromzähler aus.

Scheinbar ist das sehr Zeitintensiv...

Edit: Steht auch in der Wiki:

"Performanceprobleme mit der Funktion SMLUSB_Read lösen (Es liegen permanent Daten am seriellen Bus an, so dass SMLUSB_Read kontinuierlich ausgeführt wird und so in APPTIME immer an erster Stelle steht.)"


Wobei sie bei mir nicht an erster Stelle steht, daher war das auch etwas schwer zu finden...
:)

Nemo0815

Lässt sich das irgendwie fixen? Ich muss eigentlich nicht ständig auf die Daten hören, es reicht z.B. alle 5 Minuten.

Leider reichen meine nicht vorhandenen Perl Kentnisse dazu nicht aus, ein naiv in die Read Funktion eingefügtes sleep(60000) blockiert leider FHEM komplett :)

Prof. Dr. Peter Henning

Das kann durchaus daran liegen, dass der "interne" UART benutzt wurde:

http://forum.fhem.de/index.php/topic,28552.msg216504.html#msg216504

Den gibt es nämlich nicht, der wird nur emuliert. Ersetzen durch einen USB/Serial-Konverter hat das Problem seinerzeit gelöst.

LG

pah

Nemo0815

#18
Zitat von: Prof. Dr. Peter Henning am 15 Januar 2016, 17:14:30
Das kann durchaus daran liegen, dass der "interne" UART benutzt wurde:

http://forum.fhem.de/index.php/topic,28552.msg216504.html#msg216504

Den gibt es nämlich nicht, der wird nur emuliert. Ersetzen durch einen USB/Serial-Konverter hat das Problem seinerzeit gelöst.

LG

pah

Scheinbar nicht, habe mal probeweise das Device dass auf den internen geht gelöscht, ändert nichts an der CPU Last.

Aber andersherum wird ein Schuh draus! Wenn ich das USB Device lösche dann sinkt die CPU Last sofort wieder auf normale Werte (5%)!
Treiberproblem?

Prof. Dr. Peter Henning

Glaube ich eher nicht. Ich habe am USB des Raspberry 8 Geräte mit ordentlich viel Traffic. Außerdem sprint man bei Linux nicht von "Treibern", damit outet man sich als Windows-Geschädigter.

Vlt. die Frage mal im anderen Forum (Einplatinencomputer) stellen.

LG

pah