From 04:00 PM CDT – 08:00 PM CDT (09:00 PM UTC – 01:00 AM UTC) Tuesday, April 16, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
gvholland

Parallel Execution Structure as opposed to Sequence Structure

Status: New

I would like to propose the use of a stacked parallel execution structure.  Especially in FPGA applications, this will solve the problem of diagrams running off the screen.  All execution pages will run simultaneously as if independent while loops were scattered across the BD.  This idea potentially leads into a 3 dimensional visuallization of coding LabVIEW. Note: In the image, the pages are offset but should look similar to a stacked sequence structure.

 

 

Parallel Execution Structure 3.JPG

 

 

12 Comments
gvholland
Member
Parallel Execution Structure 4.JPG
altenbach
Knight of NI

Many years ago something similar came up: Basically a tab structure on the BD as a way to layer parallel code that has no data dependency.

 

The tabs could be freely named. For example, one tab could be named UI loop, one DAQ loop, etc. Instead of scrolling to edit different parts, we could just flip to a different tab. 🙂 More tabs could be added as needed.

There could be shared input tunnels, e.g. for a queue that is configured outside the tab structure on the left and later accessed on multiple code tabs.

 

Note that this is just a way to arrange code and is purely cosmetic. It does not add anything algorithmic. 🙂 The code would behave exactly the same as if the code from the various tabs were placed next to each other on the BD.

 

Mads
Active Participant
Normally if there are too many parallell loops I would say it's better to make them sub-VIs instead...
gvholland
Member
I agree that it is best to use a subvi when applicable.  However, it is more of a mess when you have many controls/indicators needing to be updated on the front panel during execution of that loop.  You could pass references but sometimes it doesn't make sense, especially when programming FPGA.  Thanks for posting.
Jeff.F
Member
donkdonk
Member

I think I like the tab option as suggested by altenbach

X.
Trusted Enthusiast
Trusted Enthusiast

There also was a recent suggestion of "layers" on the BD, although I never managed to get the OP to clarify what he meant by that...

Zafer.Depe
Active Participant

Kudos if that structure looks like a tab with labels 

 

@altenbach

Basically a tab structure on the BD as a way to layer parallel code that has no data dependency +1

nkruft
Member

I have been desiring this same functionality. Your implementation would be a lot more ambiguous and useful than what I had in mind though lolderp.png

 

wiebe@CARYA
Knight of NI

How would channel wires between loop be arranged? Guess those will look a lot like sequence locals?