RE: 3D Plot aus einem 2d-Array ist zu langsam
Moin,
eine Lösung habe ich nicht, aber ein paar Tipps die vielleicht weiter helfen:
- Aktuell scheinst Du das laufende VI einfach abzubrechen. Stattdessen lieber eine Stop-Taste mit dem Bedingungs-Anschluß der Hauptscheleife verbinden. (F-Konstante löschen, rechten Mausklick auf roten Punkt und "create control" bzw. das deutsche Pendant wählen.)
- Beim TCP/IP-Teil ist es sinnvoller (und schneller) die Verbindung vor der Schleife aufzubauen, während der Schleife nur die Daten zu senden bzw. zu empfangen, und die Verbindung erst nach Beendigung der Schleife zu beenden.
Dann zum "eigentlichen" Problem, der 3-D-Darstellung. Hier würde ich erstmal irgendein Dummy-Array verwenden. Im einfachsten Fall die "Gesamtes Array"-Anzeige nach einem ersten Durchlauf in ein Bedienelement (oder Konstante) umwandeln und alles vor/in den For-Schleifen testweise löschen. Ebenso alles "oberhalb" der 3d-Sachen.
Ich habe das mal mit Zufallswerten für ein 50x64-Array ausprobiert und komme damit auf etwa 83ms pro Durchgang. Das scheint also nicht das begrenzende Element zu sein. Eher vermute ich, dass die TCP/IP-Geschichte durch die geringe Verzögerung in einem anderen Rhythmus läuft und deshalb deutlich mehr Zeit benötigt. Abhilfe: siehe oben.
Die nächste Optimierung wäre dann, Datenerfassung und Anzeige in zwei getrennten Schleifen zu machen und diese per Notifier oder Queue zu verbinden.
Hth
|