LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Darren's CLAD Review Nugget 07/14/2017

Hey everybody, long time no nugget!

 

I am going to start posting CLAD Review VIs to the forums when I get the chance. These VIs are intended to help LabVIEW programmers study topics covered in the CLAD exam. You should be able to get through the VI in about 10 minutes and come out with a pretty good overview of the topic at hand. This inaugural CLAD Review VI is about queues.

 

The VI is saved in LabVIEW 2014, and there will be more CLAD Review VIs in the future. Enjoy!

Message 1 of 7
(8,520 Views)

Hi Darren,

I really like this intro to queues! Even though it was aimed at CLAD reviewers, I actually learned something as well, as I had never considered a use case for wiring a timeout to the Enqueue Element function. Also, kudos for using LV 2014 as that's the version of LabVIEW Home Edition and I was always annoyed when I found potentially useful study materials that I couldn't open at home 🙂

Message 2 of 7
(8,489 Views)

Hello Darren,

let me, please, ask the following...

In the topic "7 - Multiple Dequeuers", you wrote:



But it is also possible to have a design in which one or more places in the code enqueues elements, *and* one or more places in the code dequeues elements as well. For test systems, this approach can help process a massive stream of data quickly by having multiple analysis loops dequeue the data for parallel processing.

 


But isn't it worth mention, that in this case one will loose data? B/c each of the parallel dequeuers will read different samples; although, I understand that it would be parallel execution in case if processing time would be longer, then enqueuing time; but I guess, that it could be quite confusing for those, who start with LabVIEW and prepare to CLAD...

 

Thank you very much,

 

Sincerely, kosist90

 

logos_middle.jpg

 

0 Kudos
Message 3 of 7
(8,247 Views)

@kosist90 wrote:

Hello Darren,

let me, please, ask the following...

@in the topic "7 - Multiple Dequeuers", you wrote:



But it is also possible to have a design in which one or more places in the code enqueues elements, *and* one or more places in the code dequeues elements as well. For test systems, this approach can help process a massive stream of data quickly by having multiple analysis loops dequeue the data for parallel processing.

 


But isn't it worth mention, that in this case one will loose data? B/c each of the parallel dequeuers will read different samples; although, I understand that it would be parallel execution in case if processing time would be longer, then enqueuing time; but I guess, that it could be quite confusing for those, who start with LabVIEW and prepare to CLAD...

 

Thank you very much,

 

Sincerely, kosist90

 

logos_middle.jpg

 


You do not lose data, if you collect up the results from the parallel loops at the end. I imagine this is a useful method when your analysis only needs the blocks of data to work on, and the calculations can go on parallel. So you do not care which Enqueued data package gets where, but somewhere it will be sure processed. Then you collect up the results when the analysis ended (maybe using another Queue, N to 1 type).

0 Kudos
Message 4 of 7
(8,241 Views)

Yes, I understand it - just it worth to mention it explicitly in that description. Because if I wouldn't know information about LabVIEW queues, I would thought that they receive the same piece of data, and analyze it in parallel. Plus - then maybe it worth to put to the code as dummy example gathering of received data to array, as you've written.

0 Kudos
Message 5 of 7
(8,237 Views)

@kosist90 wrote:

Yes, I understand it - just it worth to mention it explicitly in that description. Because if I wouldn't know information about LabVIEW queues, I would thought that they receive the same piece of data, and analyze it in parallel. Plus - then maybe it worth to put to the code as dummy example gathering of received data to array, as you've written.


I agree. When I was a beginner for sure ran into issues, when I tried to Dequeue the same Queue at multiple places 🙂

0 Kudos
Message 6 of 7
(8,231 Views)

agree

0 Kudos
Message 7 of 7
(7,164 Views)