Calendar Modul: lange Ladezeit und 98% CPU

Begonnen von slupus, 20 August 2016, 12:47:13

Vorheriges Thema - Nächstes Thema

Amenophis86

Da bin ich ja froh, dass es geklappt hat. Danke für die Hilfe :)
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

Amenophis86

Ich habe übrigens mal eine Deutsche Übersetzung im Wiki Artikel hinzugefügt. So sollten Nachfolger weniger Probleme damit haben :) Wenn dir Fehler auffallen, dann gerne bescheid geben. Danke
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

sTaN

Hallo Ihr zwei,

ich verfolge sehr interessiert den Thread. Gibt es denn schon neue Erkenntnisse, warum das Calendar Modul 98% Auslastung erzeugt und FHEM komplett lahm legt? Bei mir sage und schreiben 30-45 Minuten.

Kann man etwas zur Problemlösung beisteuern?

Gruß
sTaN
Raspberry Pi 3
2 x CUL CC1101-USB-Lite 868MHz
FS20 Komponenten, Philips HUE, Alexa-Fhem, MAX! Geräte, homebridge, harmony, Unifi, FirtzBox, MQTT, Aurora, Denon, Sonos, TabletUI, CALENDAR, EGPM2LAN, Pushover

Dr. Boris Neubert

Hallo,

ich bin noch nicht zur weiteren Optimierung geschritten.

Hilfreich wäre es, eine entsprechend große .ics-Datei zu erhalten, mit der ich bei mir herumexperimentieren kann, sofern die Daten darin nicht privat sind oder sich anonymisieren lassen.

Es wäre aber schon hilfreich, auch von Dir, sTaN, eine nytprof.out zu erhalten. Amenophis86 hat das sehr schön im Wiki beschrieben.

Viele Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Amenophis86

Zitat von: Dr. Boris Neubert am 03 Mai 2017, 20:58:37
Hilfreich wäre es, eine entsprechend große .ics-Datei zu erhalten, mit der ich bei mir herumexperimentieren kann, sofern die Daten darin nicht privat sind oder sich anonymisieren lassen.

Ich hatte damals für die Erstellung des prof einen Kalender angelegt. Diesen gibt es noch und kannst du gerne dafür nutzen: https://calendar.google.com/calendar/ical/0cmedb3jn5ieaeokf9mss2qq3o%40group.calendar.google.com/public/basic.ics
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

Dr. Boris Neubert

Zitat von: Amenophis86 am 03 Mai 2017, 21:23:19
Ich hatte damals für die Erstellung des prof einen Kalender angelegt. Diesen gibt es noch und kannst du gerne dafür nutzen:

Danke dafür. Der Kalender ist nun aber nicht wirklich groß. Braucht der 10 Sekunden pro Abruf bei Dir?

Welche Hardware? Muss der Rechner swappen?
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Amenophis86

#36
Richtig, er ist nicht der größte. Hat bei meinem genutzten PI aber gereicht um ihn 10 sek ins Freez zu versetzen :) Es ist ein P1 gewesen, welchen ich zum Testen nutze.

Als Produktivsystem habe ich einen PI B+, aber da kann ich dir den passenden Kalender leider nicht freigeben. Hätte meine Freundin sicher was dagegen. Sry.

Was meinst du mit swappen?
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

Dr. Boris Neubert

Zitat von: Amenophis86 am 04 Mai 2017, 20:39:34
Was meinst du mit swappen?

Wenn der Hauptspeicher nicht ausreicht, werden Teile des Speichers nicht laufender Prozesse ausgeswappt (bei Raspian standardmäßig in einen Swapfile). Beim Wechsel von einem Prozess zu einem anderen (passiert ständig) wird dann sehr häufig Speicher auf die SD-Karte ausgelagert und ausgelagerter Speicher wieder eingelesen. Dann wird es langsam. Beim Pi1 mit nur 512 MB Hauptspeicher besteht diese Möglichkeit eher als bei einem Pi2 mit 1 GB Hauptspeicher.

Ich muss am Wochenende auf meinem Pi B+ weitertesten. Auf meinem i7-4790K CPU @ 4.00GHz laufen die relevanten Subroutinen leider in weniger als 1 µs durch  8)
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

sTaN

Bei 10 Sekunden wäre ich ja noch froh [emoji23] Versuche auch sobald ich Zeit habe das Profiling zu machen aber auch ich wüsste nicht, wie ich den Kalender anonymisieren kann.
Raspberry Pi 3
2 x CUL CC1101-USB-Lite 868MHz
FS20 Komponenten, Philips HUE, Alexa-Fhem, MAX! Geräte, homebridge, harmony, Unifi, FirtzBox, MQTT, Aurora, Denon, Sonos, TabletUI, CALENDAR, EGPM2LAN, Pushover

Dr. Boris Neubert

Zitat von: sTaN am 04 Mai 2017, 21:23:17
Bei 10 Sekunden wäre ich ja noch froh [emoji23] Versuche auch sobald ich Zeit habe das Profiling zu machen aber auch ich wüsste nicht, wie ich den Kalender anonymisieren kann.

Poste bitte erstmal nur nytprof.out (gepackt) - ich würde gerne sehen, ob es dieselben Stellen sind, die langsam sind.

Wenn ich in einer Testumgebungen Messungen durchführen kann und Verbesserungen bewirke, stelle ich ein neues Modul zum Testen hier zur Verfügung.
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Dr. Boris Neubert

Hallo,

habe mich jetzt nochmal rangesetzt. Auf dem i7 dauert die Routine parseSub bei Amenophis86' Kalender ca. 100 ms und auf dem Raspi B 2+ ca. 3.43 s. Heute ist es mir schon zu spät aber morgen suche ich nach Optimierungsmöglichkeiten.

Viele Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Amenophis86

Zitat von: Dr. Boris Neubert am 06 Mai 2017, 21:05:57
Hallo,

habe mich jetzt nochmal rangesetzt. Auf dem i7 dauert die Routine parseSub bei Amenophis86' Kalender ca. 100 ms und auf dem Raspi B 2+ ca. 3.43 s. Heute ist es mir schon zu spät aber morgen suche ich nach Optimierungsmöglichkeiten.

Viele Grüße
Boris

Top, wenn man dich noch irgendwie unterstützen kann, einfach melden.
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

Dr. Boris Neubert

#42
Hallo,

anbei eine handoptimierte Version. Ein gewisser Gewinn dürfte darin liegen.

Viele Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Amenophis86

Fhem stürzt ab mit:

Can't use an undefined value as an ARRAY reference at ./FHEM/57_Calendar.pm line 1390.
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

Dr. Boris Neubert

Zitat von: Amenophis86 am 07 Mai 2017, 20:11:12
Fhem stürzt ab mit:

Can't use an undefined value as an ARRAY reference at ./FHEM/57_Calendar.pm line 1390.

Okay, überoptimiert in Zeile 891ff. Kümmere ich mich nächstes Wochenende!
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!