LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Massive Data Parsing - Should data be referred to or passed along via controls/indicators?

When parsing large amounts of data, what is the most optimal way (for speed of course) to access said data?  Should that data be put into a DVR and then accessed when needed?  Or left in a control/indicator and then I pass a reference from SubVI to SubVI?  Or is it just as efficient to just pass data from control to indicator to the next subvi control to indicator assuming the parsing isn't asynchronous and is linear?  I was under the impression that any node (which included controls and indicators) was essentially creating the data in memory again.  But is that different using DVRs or is that the purpose of the in-place structure?  Thoughts, musings, help criticism?  All are... appreciated I guess.

0 Kudos
Message 1 of 2
(539 Views)

@DailyDose wrote:

I was under the impression that any node (which included controls and indicators) was essentially creating the data in memory again. 


Any displayed control/indicator will create a data copy for the display.  But as far as passing data through the connector pane, the compiler is smart enough to reuse the data buffers, preventing copies.

 

Is the parsing happening in a parallel loop or in the same loop?  If the same loop, just pass the data from VI to VI through the connector pane.  If parallel loop, then you should consider a queue.


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
0 Kudos
Message 2 of 2
(504 Views)