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 

Schleifenlaufzeit exakt messen



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!

23.07.2009, 15:26
Beitrag #1

achim @ FZK Offline
CLD
**


Beiträge: 117
Registriert seit: Nov 2008

201x
2005
DE_EN

76861
Deutschland
Schleifenlaufzeit exakt messen
Hallo zusammen,

ich hab mal wieder eine Frage:

Ich möchte irgendwie die Laufzeit eines Schleifendurchlaufs messen und über ein anderes VI in Abhängigkeit von CPU-Auslastung und anderen Schleifen 'regeln'.
Soll bedeuten ich möchte die im Durchlauf i=n in Abhängkeit der Laufzeit in i=n-1 und anderer Umstände die Schleifenlaufzeit anpassen.

Mein versuch dies mit Zeitstempeln und einer normalen While-Schleife zu machen funktioniert aber nicht so wirklich gut... (Anbei mein Testaufbau)
Es scheint als wäre die Zeitmessung auf diese Weise zu ungenau. Typischerweise rechne ich mit Laufzeiten zwischen 100 und 500ms.
Bei diesem kleinem und rechen unintensievem Testaufbau schwankt die gemessene Zeit um mehrere 100%.

Ohne jetzt jemals was mit getimten Schleifen gemacht zu haben, müsste dies doch eigentlich eine Anwendung dafür sein, oder?
Kann mir hierzu vielleicht schnell ein Beispiel zusammen schustern?

Oder hat jmd eine andere Idee für mein Problem?

Kurzfassung:
Ich möchte die reine Rechenzeit in der Schleife messen und die Laufzeit einer Schleife vorgeben können.

Viele Grüße
Achim


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
23.07.2009, 16:34
Beitrag #2

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.687
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Schleifenlaufzeit exakt messen
Such mal nach QueryPerformanceCounter

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
23.07.2009, 19:50
Beitrag #3

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
Schleifenlaufzeit exakt messen
2 Punkte:

1. "Get Date/Time In Seconds" hat meines Wissens nach je nach Betriebssystem/Prozessor (oder sogar generell) nicht ms-Auflösung. Machs mal mit Tick-Count, dann werden dir die ms schon mal stabil angezeigt, solange du "SollSim" nicht änderst:
   

2. Wenn du natürlich "SollSim" während änderst, während das Programm läuft, dann wird es immer dauern, bis der Schleifendurchlauf wieder stabil ist. Denn du hast am Ende "Wait Until Next ms Multiple", und das nächste ganzzahlige Vielfache des neuen Schleifendurchlaufs, das kann natürlich dauern. Alternative: Ein "normales" Wait" parallel legen:
   

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
Antwort schreiben 


Gehe zu: