@i2dx
Danke erst mal für die ausführliche Information. Ich werde Dein VI nochmal genau unter die Lupe nehmen und melde mich dann noch mal. Was mich stutzig macht ist, dass die CPU-Belastung, währen das VI ausgeführt wird, 100% beträgt. Wahrscheinlich enthält das DAQmx Write ein eingebautes Polling für die Abfrage das Puffer-Füllstandes und hält sich daran fest, bis der Buffer leer ist. Und da das Polling vielleicht in einer Schleife ohne Wait läuft, kommt es zu dieser hohen CPU-Belastung. Habe mal kurz versucht, das mit dem Eigenschaftsknoten DAQmx Write/Wartemodus zu ändern, aber wenn man das macht, kommt die Fehlermeldung, das das nicht geht, weil es sich hier um eine "ungepufferte Ausgabe" handelt (???).
Edit: Kleines Zwischenergebnis. Es scheint sich wirklich um eine ungepufferte Ausgabe zu handeln, warum weiß ich aber auch nicht zu sagen. Da pro Schjleifendurchlauf 100 Samples erzeugt werden und die Rate 1kHz beträgt, müßte die Schleifen-Durchlaufzeit eigentlich 100ms betragen. Ist sie aber nicht, es ist nur 1ms. Weiß nicht, was das AO Write in dieser 1ms mit den 100 Samples macht, ob es nur den ersten oder letzten Wert nimmt. Der Waveform-Graf gibt natürlich alle Werst brav aus und ist überhaupt nicht repräsentativ für das was am Ausgang von Write herauskommt. Hat denn das VI schon einen Praxistest bestanden, will sagen, wurde der AO-Ausgang schon benutzt?
Mit der Einfügung eines echten Buffers funktioniert es hingegen so wie erwartet, Was ich aber überhaupt nicht verstehe, denn im VI Abtasttakt gibt ja im Modus "continuous" der Eingang "Anzahl Samples" die Buffergröße vor - also müßte ja auch ein Buffer existieren.
Hier die Zeitmessung an Deinem VI:
Und hier die Änderung von mir. Die Rampe ist natürlich 1oo mal langsamer, aber vielleicht entspricht sie gerade damit den Berechnungen.