Verlangsammung des Programms durch Abspeichern von Messdaten - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +---- Forum: Datenbank & File IO (/Forum-Datenbank-File-IO) +---- Thema: Verlangsammung des Programms durch Abspeichern von Messdaten (/Thread-Verlangsammung-des-Programms-durch-Abspeichern-von-Messdaten) Seiten: 1 2 |
RE: Verlangsammung des Programms durch Abspeichern von Messdaten - Trinitatis - 16.05.2016 16:22 Hallo Phil, das geht hier alles etwas durcheinander. Natürlich ist es sinnvoll, beim Speichern bzw. Weiterverarbeiten von Messdaten das Producer-Cunsumer-Prinzip anzuwenden. Das hat aber nichts mit dem eigentlichen Speichern von Messdaten zu tun. In dem von dir angehängten Screenshot werden erst nach Beenden der Schleife alle bis dahin akkumulierten Daten gespeichert. Das ist korrekt. Bei langen Messreihen kommst du aber gar nicht so weit, weil die der Speicher zuläuft. Das hast du auch richtig erkannt. Deshalb sollst du ja auch vor dem Speichern eine Dateireferenz öffnen und in einer Schleife die Messdaten speichern. Nach Beendigung der Schleife wird dann die Referenz geschlossen. Also alles so, wie in meinem Beispiel und wie auch schon weiter oben gefordert. Da kommst du aber nicht mit Express-VIs hin (und als solches würde ich das Speicher-VI im Screenshot auch schon fast bezeichnen). Wie die Messdaten nun in die Speicherschleife gelangen, das ist deiner Kreativität bzw. deiner Programmanforderung überlassen. Entwder du speicherst in der Messschleife, was in vielen Fällen problemlos ist, oder hier käme dann das Producer-Cunsumer-Prinzip ins Spiel. Dann hättest du eine Messschleife, die die Daten in eine Queue oder ggf. Melder / LossyQueue schreibt (wenn du mit Datenverlusst leben kannst) und eine Consumerschleife, die die Daten aus der Queue liest und sie weiterverarbeitet - in deinem Fall speichert. Gruß, Marko Hallo Phil, ich habe dein VI nochmal angepass, so wie du es brauchst. Gruß, Marko RE: Verlangsammung des Programms durch Abspeichern von Messdaten - Phil Unglert - 16.05.2016 18:02 Hallo Marko, danke für deine Rückmeldung und das angehängte VI, so langsam kommt etwas Licht ins Dunkel . Danke auch für die grundsätzlichen Erläuterungen zum Producer-Consumer-Prinzip! Warum genau ist denn der von dir geschilderte Ablauf so viel schneller als das ExpressVI "Write to Measurement File Express" ? Verstehe ich es richtig dass in dem von dir geschilderten Fall die Datei "file.dat" sozusagen offen gehalten wird und nur der jeweils neueste Wert nur in die Datei geschrieben wird? Besten Dank und viele Grüße Phil RE: Verlangsammung des Programms durch Abspeichern von Messdaten - Trinitatis - 16.05.2016 18:30 (16.05.2016 18:02 )Phil Unglert schrieb: Warum genau ist denn der von dir geschilderte Ablauf so viel schneller als das ExpressVI "Write to Measurement File Express" ? ... na weil das ExpressVI bei jedem Aufruf die Datei öffnen (Daten schreiben) und sie wieder schließen muss. Das ist unnötiger Overhead, der nicht in die Schleife gehört. (16.05.2016 18:02 )Phil Unglert schrieb: Verstehe ich es richtig dass in dem von dir geschilderten Fall die Datei "file.dat" sozusagen offen gehalten wird und nur der jeweils neueste Wert nur in die Datei geschrieben wird? So sieht´s aus! Gruß, Marko RE: Verlangsammung des Programms durch Abspeichern von Messdaten - Phil Unglert - 16.05.2016 19:02 Vielen Dank Marko! |