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 

Dieses Thema hat akzeptierte Lösungen:

CPU Auslastung einer Executable



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!

14.12.2012, 11:35
Beitrag #1

JoLo Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Dec 2012

Labview Professional Development System Version 11
2012
DE_EN



CPU Auslastung einer Executable
Hallo liebe Profis Wink ,

Ich hoffe Ihr könnt mir hier weiterhelfen.
Ich habe bemerkt, dass mein LV Programm, kompiliert als EXE, im "Leerlauf" immer 25% CPU Auslastung hervorruft. In diesem Leerlauf läuft
aber nur eine while-Schleife mit 10ms Wartezeit und darin 2 Tab Controls. Die innere Tab Control hat 2 Registerkarten mit
jeweils einer Eventstruktur. Der Timeout beider Eventstrukturen ist 100ms.
Es wird aber nie wirklich etwas gemacht außer auf Events gewartet, welche im Leerlauf nicht eintreten und somit immer
der leere Timeout-Event aufgerufen wird. Verändern der Wartezeit der While-Schleife oder des Timeouts der Eventstrukturen hat keine Auswirkungen.

Kann es sein, dass die Auslastung falsch berechnet wird oder könnt ihr mir sagen warum die so hoch ist?

   

Grüße,
Johannes
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
14.12.2012, 13:00 (Dieser Beitrag wurde zuletzt bearbeitet: 14.12.2012 13:02 von GerdW.)
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: CPU Auslastung einer Executable
Hallo JoLo,

Zitat:Ich habe bemerkt, dass mein LV Programm, kompiliert als EXE, im "Leerlauf" immer 25% CPU Auslastung hervorruft.
Du hast eine QuadCore-CPU und ein Kern ist voll ausgelastet?

Zitat:In diesem Leerlauf läuft aber nur eine while-Schleife mit 10ms Wartezeit und darin 2 Tab Controls. Die innere Tab Control hat 2 Registerkarten mit jeweils einer Eventstruktur.
Wozu zwei Eventstrukturen? Das ist Blödsinn...

Zitat:Der Timeout beider Eventstrukturen ist 100ms.
Wozu dann die 10ms Wartezeit in der While-Schleife?

Zitat:Kann es sein, dass die Auslastung falsch berechnet wird
Ich gehe davon aus, dass MS den Taskmanager schon ordentlich programmiert hat...

Zitat:oder könnt ihr mir sagen warum die so hoch ist?
Meine Glas1 sagt: Das liegt wahrscheinlich an deiner Programmierung.

- Bunte BD mögen ja als schön empfunden werden, aber die konsequente Verweigerung des DATAFLOW birgt zu viele Fehlermöglichkeiten! Warum verwendest du lokale Variablen, wenn die Terminals ungenutzt rumliegen? Benutze mehr Draht, LabVIEW hat genügend davon mitgebracht. Und nutze mehr Schieberegister!
- Ein Tab-Control dient nur als Container auf dem FP! Du musst im BD nicht (zwingend) eine Case-Struktur verwenden, die die einzelnen Tabs extra behandelt!

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.12.2012, 15:16
Beitrag #3

eb Offline
LVF-Lernwilliger
***


Beiträge: 292
Registriert seit: Mar 2008

2014
2008
EN

12xxx
Deutschland
RE: CPU Auslastung einer Executable
Hallo,

ich würde gerne helfen, die Performance-Fresser-Abschnitte zu identifizieren, aber ich kann das angehängte VI einfach nicht finden!
@ JoLo: Kannst du mir da helfen?

Gruß
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.12.2012, 18:08
Beitrag #4

JoLo Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Dec 2012

Labview Professional Development System Version 11
2012
DE_EN



RE: CPU Auslastung einer Executable
Danke für die Tipps. Ich versuche am Montag mal die 2 Eventstrukturen zu vereinen und die Terminals stärker zu benutzen.
Da VI kann ich leider nicht hochladen, weil ich: 1. Erst am Mo wieder in die Arbeit komme und 2. ich nicht weiß ob ich diese Sachen ins Internet laden darf da es ein Automatisierungsprogramm für meine Firma wird. Deshalb halte ich mich mit dem Hochladen zurück.
Aber wie gesagt in meinem "Leerlauf" läuft nur diese While Struktur mit den Registern und den Eventstrukturen, welche immer in den Timeout hineinlaufen, da keine Events auftreten. Habe auch mit dem Analysetool unter Profil - Leistung und Speicher geschaut welche VI's im Leerlauf augerufen werden -> keine Veränderung der Anzahl der Aufrufe, selbst wenn ich die Analyse über ne halbe Stunde laufen lasse.

Die 25% Auslastung verwirren mich wegen der Tatsache, dass die Executable selbst 25% Leistung beansprucht, wenn die EXE gestoppt ist (also gestoppt durch den roten Knopf). Das hatte ich anfangs vergessen zu erwähnen.

Grüße
Johannes
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.12.2012, 20:08
Beitrag #5

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: CPU Auslastung einer Executable
Hallo Johannes,

Zitat:Tatsache, dass die Executable selbst 25% Leistung beansprucht, wenn die EXE gestoppt ist (also gestoppt durch den roten Knopf).
Du erstellst eine EXE und blendest die Werkzeugleiste nicht aus??? Was soll das denn??? Hast du bei Word und Konsorten jemals einen roten Stopp-Knopf gesehen???

Gegenfrage: Wenn du deine EXE per "rotem Knopf" stoppst, wie sieht dann der "Run"-Pfeil aus? Läuft die EXE weiter (was zu deiner 25%-Auslastung passen würde) oder bleibt sie wirklich "stehen", d.h. es erscheint das Pfeilsymbol zum Starten der EXE?

Glas1
Du hast irgendeine Endlosschleife in deinem Programm, die ununterbrochen und ohne Wartezeiten durchläuft. Dies passiert gern einmal in Schleifen, in denen ein Errorcluster mit irgendwelchen Funktionen verbunden ist und ein Fehler anliegt, der dazu führt, dass diese Funktionen "übersprungen" werden...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.12.2012, 11:46
Beitrag #6

JoLo Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Dec 2012

Labview Professional Development System Version 11
2012
DE_EN



RE: CPU Auslastung einer Executable
Das mit der Werkzeug war ja nur zu Testzwecken um genau dieses Problem zu beobachten. Später kommt die natürlich weg. Aber wenn ich den Stopp Button drücke erscheint der grüne Pfeil und das Programm bleibt stehen, es sind keine Aktionen am FP mehr möglich. Und wie gesagt die einzige Schleife die ich im Leerlauf habe ist die die die Register und Eventstrukturen enthält. Die Timeout Fälle darin sind auch leer. Es wird also nichts gemacht.

Gruß
Johannes
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.12.2012, 09:20
Beitrag #7

JoLo Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Dec 2012

Labview Professional Development System Version 11
2012
DE_EN



RE: CPU Auslastung einer Executable

Akzeptierte Lösung

Hallo GerdW,
danke für deine Hilfe.
Habe heute die Eventstrukturen in eine extra Whileschleife ausgelagert die parallel zum anderen Code läuft und habe beide Eventstrukturen zu einer zusammengefasst.
Außerdem habe ich weniger lokale Variablen benutzt, was aber nicht immer geht weil viele Controls am FP aktualisiert werden müssen und ich sie also wieder durch lokale Variablen beschreiben muss. Oder gibt es da andere, bessere Möglichkeiten da zu machen?
Die exe läuft jetzt wie erhofft auf 0-1% CPU Auslastung.

Grüße
Johannes
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  CPU-Auslastung bleibt bei 50% (Sub-Vi) Niko1912 4 4.380 15.10.2018 11:02
Letzter Beitrag: Niko1912
  CPU Auslastung Agenth 31 18.814 19.05.2015 09:55
Letzter Beitrag: Agenth
  Rechner Auslastung mit Labview regis57 7 6.844 25.09.2012 19:27
Letzter Beitrag: Falk
  CPU-Auslastung steigt auf 95% ChristianXX 10 11.163 20.05.2010 19:48
Letzter Beitrag: IchSelbst
  Auslastung der PCI-6221-Karte senmeis 3 4.376 07.04.2010 08:32
Letzter Beitrag: rolfk
  CPU-Auslastung geht nicht zurück Patrick83 1 4.245 10.08.2009 10:17
Letzter Beitrag: Cerbi

Gehe zu: