CPU-Load PFC200 hoch

Deutsch
Chris.O
2019-09-13
2019-10-09
  • Chris.O

    Chris.O - 2019-09-13

    Hallo Forum,

    ich habe ein Problem mit meinem PFC200 (750-8214).
    Und zwar ist meine CPU-Auslastung relativ hoch. Ich würde jetzt gerne meinen Code ein bisschen optimieren und mir hierzu die CPU-Last ansehen.
    Innerhalb des CoDeSys frage ich diese deshalb mit

    udiProzessorLoad:=SchedGetProcessorLoad(Result);
    udiProzessorLoadMax:=Max(udiProZessorLoad, udiProzessorLoadMax);
    

    ab.

    Hier liefert er mir einen Max-Wert von 77%. Somit wäre noch alles im Rahmen.

    Laut Linux-Konsole mit "htop" erhalte ich aber 96-99%

    Was stimmt denn jetzt?

    Außerdem ist es mir bei den Tests schon öfter passiert, dass der KBus aussteigt, wenn die Last recht hoch ist, ohne dass mir das in der DeviceDiagnose angezeigt wird.
    Edit: Das mit dem KBus passiert eigentlich nur direkt nach einem Online-Change.

    Über ein paar Infos wäre ich happy

    Gruß Chris

     
  • eschwellinger

    eschwellinger - 2019-09-14

    Hi,
    hast du für den KBUS eine eigene Task angelegt ( was ich generell empfehlen würde).
    + im Task deployment kontrollieren ob die IO's auch wirklich nur in der KBUS Task verwendet werden?
    Grüße
    Edwin

    IMG: Taskdeployment.png

    IMG: KBUSTask.png

     
  • Chris.O

    Chris.O - 2019-09-18

    Hallo,

    danke für die Rückmeldung.
    Das habe ich aktuell noch nicht gemacht. Sollte dann das Problem vom KBus-Ausfall lösen oder?
    Dürfte aber an der CPU-Last nicht viel ändern oder?
    Wegen der Anzeige CPU-Last... welche stimmt da? Die in der Konsole mit "htop" oder die, die ich innerhalb CoDeSys auslese?

    Gruß Chris

     
  • annD

    annD - 2019-10-09

    Hi,

    wie sollte man den eigenen Task für den KBUS am besten konfigurieren? Derzeit läuft mein gesamtes Programm in einer Task mit 20 ms. Sollte der KBUS mit gleicher Tasklaufzeit und einer etwas höheren Priorität eingestellt werden?

    Gruß annD

     

Log in to post a comment.