LabVIEWForum.de
CPU Auslastung : CASE Struktur VS Event Struktur > 20% : 60% ??? - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: CPU Auslastung : CASE Struktur VS Event Struktur > 20% : 60% ??? (/Thread-CPU-Auslastung-CASE-Struktur-VS-Event-Struktur-20-60)

Seiten: 1 2


RE: CPU Auslastung : CASE Struktur VS Event Struktur > 20% : 60% ??? - jg - 08.06.2012 11:31

Wieso setzt du immer noch Eigenschaften von Anzeigen per Value(Signaling), obwohl du gar keine Events für diese Anzeigen abfragst? Lokale Variable oder nur die Property Value langt vollkommen!

Nimm auch mal das doppelte Stop-Event raus. Das kannst du ja von der einen auf die andere Schleife, z.B. mit einem zweiten (unsichtbaren) Stop-Button, denn du dann per PropertyNode Value(Signaling) setzt, auslösen.

Schon mal Debugging betrieben? Schleifen und/oder Code-Abschnitte deaktiviert, um zu sehen, was dir die CPU-Last hochtreibt?

Gruß, Jens
(08.06.2012 11:04 )Dimasq schrieb:  Hmm ich habs nun gelöst ... das ich nicht früher drauf gekommen bin.

Eine einfache Warte-Funktion, mit einem niedrigen Wert sogar, bringt die CPU Auslastung zwischen Null und 2 Prozent .

Aber was macht diese While-Schleife so besonders ?!?!

Danke !
Solange "Motor Connection" = FALSE, wird immer nur "VISA-Close" ausgeführt. Das geht sehr schnell, somit hast du eine quasi ungebremste While-Loop, die dir die CPU-Last hochtreibt. Bei Connection=True sieht es mglw. anders aus, da dort dein Sub-VI "Mikrocontroller2" aufgerufen wird.

Gruß, Jens


RE: CPU Auslastung : CASE Struktur VS Event Struktur > 20% : 60% ??? - GerdW - 08.06.2012 11:54

Hallo,

Zitat:Aber was macht diese While-Schleife so besonders ?!?!
Keine Ahnung, du zeigst ja das subVI nicht...
Aber du kannst ja das VISA-Open noch aus der Schleife rausnehmen. Oder musst du den Port jedesmal auf's Neue öffnen?


RE: CPU Auslastung : CASE Struktur VS Event Struktur > 20% : 60% ??? - Dimasq - 08.06.2012 12:14

(08.06.2012 11:31 )jg schrieb:  Wieso setzt du immer noch Eigenschaften von Anzeigen per Value(Signaling), obwohl du gar keine Events für diese Anzeigen abfragst? Lokale Variable oder nur die Property Value langt vollkommen!

Nimm auch mal das doppelte Stop-Event raus. Das kannst du ja von der einen auf die andere Schleife, z.B. mit einem zweiten (unsichtbaren) Stop-Button, denn du dann per PropertyNode Value(Signaling) setzt, auslösen.

Schon mal Debugging betrieben? Schleifen und/oder Code-Abschnitte deaktiviert, um zu sehen, was dir die CPU-Last hochtreibt?

Gruß, Jens

Ich hatte ein anderes Verständnis bezügl. Value(Signaling). Jetzt hab ich den Sinn von " Signaling" verstanden. Zurecht waren alle Properties "Value Signaling" unnötig. Habe alle mit einer lok.Variable ersetzt.

Dein Tipp mit dem Stop Button und dem PropertyNode hat funktioniert, Value Signal macht jetzt sinn.

[attachment=40101]

Vielen Dank. Bis zum Nächstenmal Wink


RE: CPU Auslastung : CASE Struktur VS Event Struktur > 20% : 60% ??? - Kiesch - 08.06.2012 12:22

Sagt NI denn was zu 2 mal das gleiche Event in zwei Schleifen? Ich meine: Offenbar wird es ja richtig gehandhabt, alle Verbraucher (Event Strukturen) kriegen offenbar bei Bedarf Ihr Event getriggert. Okay, man sollte sich über Racing Conditions bewusst sein, aber so lange man wie hier nur liest sollte doch auch das unproblematisch sein, oder?


RE: CPU Auslastung : CASE Struktur VS Event Struktur > 20% : 60% ??? - Dimasq - 08.06.2012 12:28

(08.06.2012 11:54 )GerdW schrieb:  Hallo,

Zitat:Aber was macht diese While-Schleife so besonders ?!?!
Keine Ahnung, du zeigst ja das subVI nicht...
Aber du kannst ja das VISA-Open noch aus der Schleife rausnehmen. Oder musst du den Port jedesmal auf's Neue öffnen?

Stimmt natürlich.Visa Open nehm ich raus, Visa Close kann auch raus .

Alle SubVI's für diese Schleife :[attachment=40102]

Wäre es ungeeignet wenn ich VISA Open und CLose in die VI packe? Da die VI ständig abgerufen wird .


Danke