02.08.2010, 10:42
(Dieser Beitrag wurde zuletzt bearbeitet: 02.08.2010 10:44 von dimitri84.)
|
dimitri84
Astronaut
Beiträge: 1.496
Registriert seit: Aug 2009
2020 Developer Suite
2009
DE_EN
53562
Deutschland
|
Laufzeitproblem
' schrieb:@Dimitri
Interessant, aber glauben tue ich das erst beim Nachweis, daß NI das so gesagt hat.
1) http://forums.ni.com/t5/LabVIEW/Dealing-wi...uery.id=1361925
2)
' schrieb:Die Multiplikation kann das Integer Array Inplace benützen. Mit der Konversion wird explizit ein weiteres Array angelegt. Das funktioniert aber nur bei LabVIEW Built-in Nodes. Die können und probieren Inplaceness zu verwenden wenn immer möglich.
Ich hab's auch schon aus dem Mund eines NI-Mitarbeiters gehört, aber leider kein Tonbandgerät mitlaufen lassen
Zitat:Ungläubig bin ich schon deshalb, weile eine Inplace-Struktur mir bisher noch niemals Schhnelligkeit gebracht hat, sondern es geht ausschließlich um die Einsparung von Speicherplatz.
Genau das. Dass die inplace Dinger weniger performant sind, ist kein Geheimnis. Es geht auch nur um den Speicher, was anderes hab ich nicht gesagt.
„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
|
|
|
02.08.2010, 11:40
|
nookie
CLA
Beiträge: 47
Registriert seit: May 2008
2011
2004
EN
2540
Oesterreich
|
Laufzeitproblem
' schrieb:Und was LV-Professional nookkie sagt ist falsch: Die Wait-Funktion blockiert nicht den "gesamten Programmablauf". Die Wartezeit wird im Gegenteil dazu genutzt, daß alles getan wird, was sich in anderen Teilen des Programmes noch erledigen läßt.
Blockieren würde das Wait nur dann, wenn das ganze Programm in eine Sequenzstruktur eingebettet wäre - was leider Anfänger sehr gern tun, da sie dem Datenflußprinzip nicht so recht trauen. Während das Programm in einer Sequenz wartet, werden alle anderen Sequenzen blockiert.
Ich glaub ich hab mich schlecht ausgedrückt, was ich sagen wollte ist, dass diese Funktion zum Ausführen genau 100ms dauert.
snip09 Wenn ich die Schleife 10 mal ausführe, dauert die Ausführung des Programms ja auch wundersame weise 1 Sekunde.
Und ich glaube nicht, dass das die ursprünglich beabsichtigte Funktion war.
lG nookie
Intuition ist die Fähigkeit, die Lage in sekundenschnelle falsch einzuschätzen.
|
|
|
02.08.2010, 11:49
|
jak888
LVF-Gelegenheitsschreiber
Beiträge: 133
Registriert seit: Apr 2010
2010
2010
en
97447
Deutschland
|
Laufzeitproblem
Und woher kommt dann die Verzögerung?
"Good judgement comes from experience, experience comes from bad judgement."
|
|
|
02.08.2010, 13:20
(Dieser Beitrag wurde zuletzt bearbeitet: 02.08.2010 13:21 von Lucki.)
|
Lucki
Tech.Exp.2.Klasse
Beiträge: 7.699
Registriert seit: Mar 2006
LV 2016-18 prof.
1995
DE
01108
Deutschland
|
Laufzeitproblem
' schrieb:Und woher kommt dann die Verzögerung?
Das wird wohl an der Messtechnil liegen. Zwar hast Du ne Menge Uhren um Programm, aber ich sehe keine Konstellation, daß man damit die Dauer der Schleifenausführung zuverlässig messen kann. Du solltest dazu jede Uhr in eine eigene Sequenz packen, wo nichts anderes drin ist. Also: 1.Seq: 1.Uhr; 2.Sequ: Schleife ohne Uhr, 3.Sequ: 2.Uhr und Differenzbildung 2.U.-1.U, usw.
|
|
|
02.08.2010, 13:39
|
jak888
LVF-Gelegenheitsschreiber
Beiträge: 133
Registriert seit: Apr 2010
2010
2010
en
97447
Deutschland
|
Laufzeitproblem
Habs mal so gemacht, aber ich habe immernoch 7 ms fehler, bei 5200 ms eingestellt...
"Good judgement comes from experience, experience comes from bad judgement."
|
|
|
02.08.2010, 14:10
(Dieser Beitrag wurde zuletzt bearbeitet: 02.08.2010 14:11 von Lucki.)
|
Lucki
Tech.Exp.2.Klasse
Beiträge: 7.699
Registriert seit: Mar 2006
LV 2016-18 prof.
1995
DE
01108
Deutschland
|
Laufzeitproblem
' schrieb:Habs mal so gemacht, aber ich habe immernoch 7 ms fehler, bei 5200 ms eingestellt...
Sehr gutes Ergebnis, in der Hife steht: "Die Fehlertoleranz der Funktion Warten beträgt +-1ms." Macht bei 52 Aufrufen max. 52ms, und nach dem Fehlerfortplanzungsgesetz ist mit einem mittleren Fehler von Sqrt(52) = 7ms zu rechnen. Also ist Dein Beispiel eine ausgezeichnete Demonstration des Fehlerfortpflanzungsgesetzes, besser gehts gar nicht! (den Vorschlag mit dem Metronom mache ich aber jetzt nicht noch einmal, denn da ist auch ein Trick dabei, den ich jetzt nicht Lust habe zu erklären)
|
|
|
02.08.2010, 14:16
(Dieser Beitrag wurde zuletzt bearbeitet: 02.08.2010 14:27 von jak888.)
|
jak888
LVF-Gelegenheitsschreiber
Beiträge: 133
Registriert seit: Apr 2010
2010
2010
en
97447
Deutschland
|
Laufzeitproblem
Jetzt werd ich das wohl so lassen müssen...
Aber der Trick mit dem Metronom würde mich doch interessieren... kannst ihn ja mal posten, wenn du Zeit hast...
Edit: ...und Lust.
Im übrigen ist mir gerade aufgefallen: wenn ich das 48 Stunden laufen lasse, dann habe ich einen Fehler von fast 22 Minuten... lol...
Edit(2): oder auch 2 Minuten...
Edit(3): oder auch 1,3 sekunden...
Ach, ich weiß doch auch nicht, was. Wird wohl Zeit, dass die Uni wieder anfängt. Das Hirn weicht langsam auf... Scheinbar...
"Good judgement comes from experience, experience comes from bad judgement."
|
|
|
02.08.2010, 15:12
|
jak888
LVF-Gelegenheitsschreiber
Beiträge: 133
Registriert seit: Apr 2010
2010
2010
en
97447
Deutschland
|
Laufzeitproblem
Um jetzt mal Niki Laudas Aussage von gestern zu entsprechen: Ja, aber:
ich hab die Schleife ja so, oder so nur um die Zeit zwischen dem drücken des Tasters und dem Schalten eines Relais zu steuern. Wenn ich das jetzt so mache, wie von dir beschrieben bleibt der Fehler ja nach wie vor bestehen. Ob er jetzt in der SChleife besteht, oder davor, ist dabei egal.
"Good judgement comes from experience, experience comes from bad judgement."
|
|
|
03.08.2010, 09:05
|
jak888
LVF-Gelegenheitsschreiber
Beiträge: 133
Registriert seit: Apr 2010
2010
2010
en
97447
Deutschland
|
Laufzeitproblem
So, hab jetzt einen Workaround gefunden.
Dabei macht er manchmal 1 ms Fehler, wegen der Gleitkommaoperationen, aber 1ms ist im Vergleich zu der Schaltzeit eines Relais wohl egal.
Danke für alle Hilfe
"Good judgement comes from experience, experience comes from bad judgement."
|
|
|
| |