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 

Zu hohe Prozessorauslastung (100%)



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!

30.11.2011, 08:44
Beitrag #1

Kridi Offline
LVF-Neueinsteiger


Beiträge: 8
Registriert seit: Nov 2011

2010
2011
DE



Zu hohe Prozessorauslastung (100%)
Hallo Zusammen,

ich habe ein VI erstellt, mit dem eine halbautomatische Montageanlage 24/7 überwacht werden soll. Dazu werden die Taktzeiten der einzelnen Stationen aufgenommen und zusammen mit einem Zeitstempel in jeweils eine Textdatei pro Station geschrieben. Eingelesen werden die Signale über eine PCI-6511 mit 64 DI's.
Insgesamt werden gleichzeitig 16 Messungen durchgeführt, die über 24 digitale Eingänge gesteuert werden.

Mein Problem ist nun: Wenn ich das Haupt-VI (Messung_Anlagenzeit) ausführe und die Messung starte, steigt die Prozessorauslastung auf 100%.
Führe ich eines der beiden Sub-VI's aus, liegt die Auslastung nur bei 0%.

Wäre nett wenn sich jemand meiner Erbarmen könnte, und sich die VI's mal anschauen würde.
Ich kann mir nämlich nicht vorstellen, dass der PC (Pentium 4 mit 2,6GHz) damit nicht fertig wird.

Ich muss noch dazu sagen, dass ich erst vor ca. einem Monat mit LabVIEW angefangen habe. Aus diesem Grund sind die VI's mit Sicherheit auch noch nicht wirklich ausgereift.
Deshalb bin ich auch für Verbesserungsvorschläge abseits meines eigentlichen Problems offen.

Liebe Grüße
Andreas


Angehängte Datei(en)
10.0 .vi  Messung_Anlagenzeiten.vi (Größe: 55,96 KB / Downloads: 173)

10.0 .vi  Taktzeitmessung.vi (Größe: 47,29 KB / Downloads: 160)

10.0 .vi  Textdatei_erstelllen.vi (Größe: 24,38 KB / Downloads: 158)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
30.11.2011, 09:23 (Dieser Beitrag wurde zuletzt bearbeitet: 30.11.2011 09:23 von Y-P.)
Beitrag #2

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
RE: Zu hohe Prozessorauslastung (100%)
Ich habe leider nur einen 24''-Monitor. Sad
Durch das ganze Scrollen habe ich den Überblick verloren.
Außerdem bin ich durch das Programmierkonzept nicht wirklich durchgestiegen.
Was möchtest Du denn genau machen, dass Du so viele Tasks gleichzeitig aufrufst (das geht doch mit einem Task)?

Gruß Markus

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.11.2011, 09:29
Beitrag #3

Schwand Offline
LVF-Stammgast
***


Beiträge: 276
Registriert seit: Nov 2007

2014
2006
DE

31789
Deutschland
RE: Zu hohe Prozessorauslastung (100%)
Moin,

Wenn ich das auf die Schnelle richtig sehe, öffnest du in deinem Hauptvi alle 100ms 16 Dateien, schreibst dort die Messwerte rein und schließt die Datei wieder. Das könntest du anders machen, in dem du die Dateien einmal öffnest (vor der Schleife), kontinuierlich Daten reinschreibst (in der Schleife) und die Datei (nach der Schleife) wieder schließt. Oder du sammelst erst alle Dateien und machst den kompletten Speichervorgang nach der Schleife.

Grüßle
S.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.11.2011, 09:57 (Dieser Beitrag wurde zuletzt bearbeitet: 30.11.2011 10:10 von Lucki.)
Beitrag #4

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Zu hohe Prozessorauslastung (100%)
Also was ich sehe: die 16 Dateien werden sogar alle 10 ms geöffnet und geschlossen. Mich wundert daß das überhaupt geht.
Etwas anderes: Labview ist so konzipiert, daß sich solche flächenfressenden Strickmuster wie du so hast immer vermeiden lassen.
Hier Beispiel, wie man den Inhalt der While-Schleife mit den 16 Tasks, die schon für sich allein den Flächenverbrauch von 3 Bildschirmen hat, auf Größe einer Briefmarke (naja, Sondermarke) bringt. (Auf echte Standard-Briefmarkengröße kommt man, wenn man noch die 6 Eingänge des SubVIs durch einen Cluster ersetzt)


8.5 .vi  Unbenannt 1.vi (Größe: 47,52 KB / Downloads: 208)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.11.2011, 10:21
Beitrag #5

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Zu hohe Prozessorauslastung (100%)
Ebenfalls nicht gut: Dauernd per Obtain-Notifier eine Referenz zu einem Notifier zu holen, vor allem, ohne diese angelegten neuen Refnums zu schließen.
Besser: Die einmal angelegte Notifier-Referenz an die SubVIs verteilen, z.B. per Übergabe oder FGV oder sonst wie.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.11.2011, 10:38 (Dieser Beitrag wurde zuletzt bearbeitet: 30.11.2011 10:39 von Lucki.)
Beitrag #6

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Zu hohe Prozessorauslastung (100%)
Zum Vorschlag von Schwand
Zitat:Oder du sammelst erst alle Dateien und machst den kompletten Speichervorgang nach der Schleife.
fällt mir noch ein: Das Sammeln aller Daten könnte man auch in einer Binärdatei - statt im Memory des PC - machen. Wenn dann die zeitkritische Online- Datenerfassung abgeschlossen ist, nimmt man sich die Datei vor und verteilt die angefallenen Daten auf die 16 Textdateien.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
30.11.2011, 11:27
Beitrag #7

Kridi Offline
LVF-Neueinsteiger


Beiträge: 8
Registriert seit: Nov 2011

2010
2011
DE



RE: Zu hohe Prozessorauslastung (100%)
@Y-P: Ja, ist leider ziemlich unübersichtlich geworden.

Was gemacht werden soll: An 16 Stationen sollen parallel die Taktzeiten aufgezeichnet werden. Für jede Station gibt es einen Start- und einen Stoptask, falls die Messung mit einem anderen Signal als dem Startsignal wieder gestoppt werden soll.

Wie könnte ich das mit einem einzigen Task realisieren?

@Schwand: Beim Start der Messung wird ein neuer Ordner erstellt, indem die Textdatei gespeichert wird. Nachdem die Messung eines Taktes abgeschlossen ist, wird die ermittelte Taktzeit inkl. des Zeitstempels in die Textdatei geschrieben. Erst wenn die Messnug beendet wird, wird auch die Textdatei geschlossen. ("in Textdatei schreiben.vi")

@Lucki: Wow, danke für den Tip, das mach das ganze doch schon bedeutend übersichtlicher!

@jg: OK, werde ich mal versuchen, auch wenn ich momentan noch keine Ahnung habe wie ich das machen könnte. Das dürfte aber nichts an dem Auslastungsproblem ändern?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.11.2011, 14:40
Beitrag #8

Kridi Offline
LVF-Neueinsteiger


Beiträge: 8
Registriert seit: Nov 2011

2010
2011
DE



RE: Zu hohe Prozessorauslastung (100%)
So, hab den Vorschlag von Lucki nun umgesetzt, allerdings bearbeitet er mir so nur den ersten Task, und schreibt somit auch nur eine Textdatei (die aus dem ersten Task), statt 16.


Angehängte Datei(en)
10.0 .vi  Messung_Anlagenzeiten.vi (Größe: 38,84 KB / Downloads: 161)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.11.2011, 17:47
Beitrag #9

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Zu hohe Prozessorauslastung (100%)
Es funktioniert nur, wenn du für die Textdateien 16 verschiedene Namen eingibst. Hast Du das wirklich gemacht?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
01.12.2011, 08:12
Beitrag #10

Kridi Offline
LVF-Neueinsteiger


Beiträge: 8
Registriert seit: Nov 2011

2010
2011
DE



RE: Zu hohe Prozessorauslastung (100%)
Natürlich habe ich verschiedene Namen angegeben.
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
  Daten erfassen und archivieren mit hohe Frequenz sechhada 2 4.486 15.03.2012 14:16
Letzter Beitrag: sechhada
  Welcher Speichertyp / -VI für hohe Geschwindigkeiten kayligh 1 3.136 28.06.2011 21:46
Letzter Beitrag: kayligh
  Zu hohe Datenmenge? Programm stürzt ab Thomas K aus W 11 11.698 07.01.2011 11:25
Letzter Beitrag: unicorn
  Prozessorauslastung / Taskmanager Diamond 2 4.005 13.10.2009 15:25
Letzter Beitrag: Diamond
  Hohe Abtastung aber nur bestimmte Werte nutzen johannes_r 35 31.716 03.08.2009 20:57
Letzter Beitrag: johannes_r
  Desktop - Breite / Höhe CarpeDiem 1 5.090 02.12.2008 09:52
Letzter Beitrag: Achim

Gehe zu: