INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

startup.rtexe auf cRIO-904x mit "RT" Priorität ausführen



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

09.10.2018, 19:02
Beitrag #1

RoK Offline
LVF-Neueinsteiger


Beiträge: 9
Registriert seit: Jul 2018

2018
2017
DE_EN

10178
Deutschland
startup.rtexe auf cRIO-904x mit "RT" Priorität ausführen
Liebe LabVIEW-Entwickler,

bei dem Betrieb einer RT-Applikation auf einem cRIO-9041 (LinuxRT) hab ich folgendes, für mich unerwartetes Verhalten festgestellt: Wenn ich im Linux via Skript ein zyklisches Zippen von Messdateien starte wird der RT-Anwendung weniger CPU-Kapazität zugewiesen (gZIP-Thread bekommt mehr CPU-Kapazität). Dabei wird auch die Zykluszeit einer Whileschleife, in welcher einige Berechnungen in weniger als 1s durchgeführt werden sollen, unzulässig vergrößert.

Meine Erwartung wäre: Die Berechnungen sollen unter 1s abgeschlossen werden, also müsste sich der Thread der RT-Anwendung aufgrund seiner hohen Ausführungspriorität die notwenigen CPU-Berechnungszeiten "verschaffen" (Scheduler).
Tatsächlich habe ich aber festgestellt, dass der Prozess der RT-Applikation ({MainAppThread} ./lvrt liblvrt-ui.so) lediglich mit normaler Priorität vom Linux-System ausgeführt wird. Der PR-Wert ist 20, so wie auch 20 ist für den gZIP-Thread oder etwa einen Firefox-Prozess.

Nun meine Frage(n): Ist das Verhalten wie oben beschreiben so zu erwarten? Wie kann die Ausführungspriorität der RT-Applikation maximiert werden (auf PR-Wert "RT")? Was könnte noch getan werden, um den Einfluss weiterer Prozesse/Threads auf die Ausführungsperformance der RT-Applikation zu minimieren?


WEITERE INFOS:
Programmiermodus: Real-Time CPU (seit cRIO-Generation 904x)
Architektur RT-Applikation: Queued Message Handler
Berechnungsschleife wird asynchron parallel zu weiterem Programmcode ausgeführt
CPU-Last (nur RT-Applikation): unter 30% >>> Zykluszeit Berechnungsschleife: ca. 0,5s
CPU-Last (RT und gZIP): ca. 95 bis 100% >>> Zykluszeit Berechnungsschleife: über 1s
Firmware cRIO-9041: 5.6.0f0f
Betriebssystem: NI Linux Real-Time x64 4.9.47 -rt37-6.0.0f1


Vielen Dank und Gruß aus Berlin
RoK
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
Antwort schreiben 


Nachrichten in diesem Thema
startup.rtexe auf cRIO-904x mit "RT" Priorität ausführen - RoK - 09.10.2018 19:02

Gehe zu: