Ankündigung

Einklappen
Keine Ankündigung bisher.

Performanceprobleme

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #16
    Zitat von Marha Beitrag anzeigen
    Ist es sinnvoll mit 50ms zu starten?
    Schaden wird das wohl nicht...
    Den Wert von MaxZyklusZeit liegt öfter mal im weiter oben erwähnten Bereich, auch wenn ich ihn im EibStudio wieder lösche. Der Wert sieht mir nach einem u32-Überlauf aus, was eigentlich nicht sein kann. Oder habe ich etwas übersehen?
    Nun, es könnte sein, dass die Verarbeitung sehr kurz ist, und u32 durch die Differenzbildung einen Überlauf bekommt.
    Aber das klingt auch sehr merkwürdig, fast so, als wäre da was mit der Systemzeit nicht in Ordnung. Kannst Du mal die NTP Synchronisierung deaktivieren (EibStudio/NTP Synchronisation), und schauen, ob der EibPC dann zeitlich signifikant hinterherläuft?
    offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
    Enertex Produkte kaufen

    Kommentar


      #17
      Nein, er läuft nicht nach.
      Der Überlauf kommt dadurch Zustande, dass die Differenz aus StoppZeit-Restzeit kleiner ist als die PerformanceZeit. Mich wundert nur, dass der Überlauf ein u32 Wert ist, obwohl die Variablen alle u64 sind. Und Rückgabewert von max() sollte doch dann auch u64 sein.
      Ich habe nun einiges aus dem Code rausgeschmissen und bin bei einer Auslastung von 20,1 % angelangt. Bei einer Zykluszeit von 50ms erhalte ich nun für MaxZyklusZeit einen Wert von 105 (was 105 ms entspricht) und für MinZyklusZeit einen Wert von 16 (was 16 ms entspricht).
      Wenn ich nun die Zykluszeit halbiere also 25 ms dann erhalte ich Werte für MaxZyklusZeit von 368 und für MinZyklusZeit von 7 bei unverändertem Programm. Wie kann ich mir da einen Reim draus machen?

      Gruß
      Markus

      Kommentar

      Lädt...
      X