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 

Anwendung wird nach ca. 130 Schleifenduchläufen langsam



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!

16.03.2009, 12:02
Beitrag #1

amin Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 115
Registriert seit: Dec 2008

2009, 8.61, 8.51
2008
en

76131
Deutschland
Anwendung wird nach ca. 130 Schleifenduchläufen langsam
Hallo,

ich habe ein Problem. Und zwar wird mein Programm nach ca. 130 While Schleifendurchläufen etwa halb so schnell. Und ich verstehe nicht warum. Denn eigentlich sollte die Anzahl der Durchläufe keine Resourcen verbrauchen, oder ? Ich habe zwar ein Schieberegister drin, welches ein immer längeres Array erstellt. Dieses wrd aber mit hilfe einer Case Strucktur rechtzeitig beendet. Was auch funktioniert, da ich mir die Arraylänge zum Test anzeigen lassen habe.

Ansonsten stekcne in der Schleife kleinerlei von der Anzahl der Schleifenwiederholungen abhänge Elemente.

Hat jemand eine Idee woran sowas sonst noch liegen kann.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
16.03.2009, 12:05
Beitrag #2

eckilein Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 129
Registriert seit: Jan 2008

2010 FDS
2008
de

59929
Deutschland
Anwendung wird nach ca. 130 Schleifenduchläufen langsam
Ich denke ohne die Schleife zu sehen ist das recht schwer zu sagen. Wären nur Vermutungen die man aufstellen kann.

There are 10 types of people in this world. Those who understand binary and those who don't.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.03.2009, 13:01
Beitrag #3

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.689
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Anwendung wird nach ca. 130 Schleifenduchläufen langsam
Da sag ich doch mal einkalt:

' schrieb:Ich habe zwar ein Schieberegister drin, welches ein immer längeres Array erstellt.
Genau dieses Array respektive dieses Verfahren zum Speichern von Daten in Arrays ist am Langsamerwerden Schuld.

Du musst das Array vor Beginn der Schleife mit dem Maximalwert vorbesetzen und innerhalb der Schleife die Daten mit "In Array ersetzen" ins Array bringen - nicht mit "Array erstellen" oder "An Array anhängen".

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.03.2009, 13:39 (Dieser Beitrag wurde zuletzt bearbeitet: 16.03.2009 13:42 von amin.)
Beitrag #4

amin Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 115
Registriert seit: Dec 2008

2009, 8.61, 8.51
2008
en

76131
Deutschland
Anwendung wird nach ca. 130 Schleifenduchläufen langsam
' schrieb:Da sag ich doch mal einkalt:

Genau dieses Array respektive dieses Verfahren zum Speichern von Daten in Arrays ist am Langsamerwerden Schuld.

Du musst das Array vor Beginn der Schleife mit dem Maximalwert vorbesetzen und innerhalb der Schleife die Daten mit "In Array ersetzen" ins Array bringen - nicht mit "Array erstellen" oder "An Array anhängen".

Also wie gesagt stoppe die weitere Erstellung des Array, was ich auch jetzt zum test mittels der Arraygrösse überprüft habe.
Das Array vorher auf 0 zu defnieren gefällt mir nicht so richtig, da ich dieses Grafisch innerhalb der Schleife ausgebe, und es sich so schick aufbaut. Aber falls Du wirklich meinst dies das Problem ist, muss ich mir was anderes überlegen.

Gruss

amin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.03.2009, 13:48
Beitrag #5

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.689
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Anwendung wird nach ca. 130 Schleifenduchläufen langsam
' schrieb:Aber falls Du wirklich meinst dies das Problem ist, muss ich mir was anderes überlegen.
Zumindest in 90% trifft das zu.

Poste mal das/ein VI oder stell ein Bild ein!

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.03.2009, 14:25 (Dieser Beitrag wurde zuletzt bearbeitet: 16.03.2009 14:28 von Dennis.Moser.)
Beitrag #6

amin Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 115
Registriert seit: Dec 2008

2009, 8.61, 8.51
2008
en

76131
Deutschland
Anwendung wird nach ca. 130 Schleifenduchläufen langsam
Hallo,

hab mal kurz ein File erstellt, damit man sieht wie ich das mit dem Array gelöst habe (also vom Schema her).
Die Anwendung ist zwar total einfach und daher bekomme ich keine sichbare verlangsamung. Wenn ich aber in den Taskmanager von Windows gehe, habe ich auch hier eine CPU Auslast von 100%.

Jedoch ist mir nun aufgefallen, das ich selbst für eine Schleife, die praktisch gar nichts tut eine CPU-Auslast von 100% bekomme.

Jetzt meine Frage, muss ich zwangsläufig für Schleifen Timer benutzen, damit sie nicht alle Resourcen nehmen die da sind. Oder brauche ich schlicht und ergreifend einen schnelleren Rechner:

Pentium 4 mit 2,66Ghz
1 GB Ram


ciao & Danke

amin

PS: File ist für LabVIEW 8.6

:Lv86_img


Angehängte Datei(en)
Sonstige .vi  array_LV8.6.vi (Größe: 10 KB / Downloads: 220)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
16.03.2009, 14:43
Beitrag #7

TSC Offline
LVF-Team
LVF-Team

Beiträge: 1.882
Registriert seit: Sep 2008

LV 2018 SP1
2008
EN

52379
Deutschland
Anwendung wird nach ca. 130 Schleifenduchläufen langsam
Wenn du eine Schleife ohne Timer verwendest, will LabVIEW sie so schnell wie möglich durchlaufen. Dazu verwendet es sämtlichen zur verfügung stehende Rechenkapazität. Ein schnellerer Rechner würde nur dazu führen, dass du mehr Schleifendurchläufe pro Zeiteinheit schaffst. Die CPU bleibt ausgelastet.

LG
Torsten

"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" (Konrad Zuse)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.03.2009, 14:44
Beitrag #8

kpa Offline
LVF-Stammgast
***


Beiträge: 385
Registriert seit: Mar 2007

2019
2002
DE

88***
Deutschland
Anwendung wird nach ca. 130 Schleifenduchläufen langsam
Hallo amin,

Deine While-Schleife braucht eine Zeitverzögerung sonst wird sie, sobald sie fertig ist wieder ausgeführt -- und zwar so schnell Dein Rechner das kann -- und das schnellste was er kann sind 100%.

Grüße

kpa
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.03.2009, 15:29
Beitrag #9

amin Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 115
Registriert seit: Dec 2008

2009, 8.61, 8.51
2008
en

76131
Deutschland
Anwendung wird nach ca. 130 Schleifenduchläufen langsam
OK super,

danke an Euch Alle. Hab jetzt überall 1ms wartezeit drin und nun läuft´s so wie es soll.

Danke nochmal...

Gruss

amin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Name der LabVIEW Anwendung im Task Manager spacz 4 2.708 28.10.2021 08:53
Letzter Beitrag: jg
  läuft die Anwendung im Adminmodus ? Trinitatis 0 2.038 03.06.2021 11:15
Letzter Beitrag: Trinitatis
  Passende Hardware für Anwendung Tobi Wan Kenobi 2 3.353 10.10.2017 05:48
Letzter Beitrag: Tobi Wan Kenobi
  LV..Erstellung einer Anwendung RS232 Xit 1 3.166 25.09.2017 12:25
Letzter Beitrag: Freddy
  Programm wird Langsam Kernphysik_Jürgen 11 8.270 29.11.2016 14:33
Letzter Beitrag: GerdW
  Anwendung der DFT (Diskrete Fourrier Transformation) auf Bilder Ifnotdefine 0 2.627 03.12.2014 14:15
Letzter Beitrag: Ifnotdefine

Gehe zu: