Jump to content

Data flow: Difference between revisions

From LabVIEW Wiki
No edit summary
m Fixed broken link to Wikipedia article on Dataflow programming
Line 32: Line 32:
== External links ==
== External links ==


* [[Wikipedia:Dataflow Dataflow]] (Wikipedia)
* [[Wikipedia:Dataflow programming]] (Wikipedia)
* [http://www.ni.com/getting-started/labview-basics/dataflow Dataflow Programming Basics] (National Instruments)
* [http://www.ni.com/getting-started/labview-basics/dataflow Dataflow Programming Basics] (National Instruments)



Revision as of 19:13, 2 October 2022

Dataflow programming is a programming paradigm where the execution of functions is determined by their data dependencies. This is fundamentally different from traditional programming paradigms that execute functions in sequence as they appear in the source code.

LabVIEW dataflow model

LabVIEW uses the graphical programming language G Dataflow, which utilizes wires to represent data dependencies between functions (nodes in LabVIEW terminology).

A node without input wires can execute immediately, while a node with input wires must wait until the previous node has finished execution.

A node without input wires executes immediately.
A node with input wires waits for the previous node to finish execution.

It is also possible to execute multiple nodes in parallel, as long as they have no data dependencies between each other. However, the total number of nodes that can execute in parallel is limited by the execution system.

Nodes without data dependencies execute in parallel. (Note: Execution highlighting forces the code to run in a single thread which is why they appear to execute sequentially).

Visualizing dataflow in LabVIEW

The debugging option "Execution Highlighting" Execution Highlighting enabled will visualize the flow of data while executing a VI in LabVIEW.

This, however, forces the code to run in a single thread, which causes nodes to execute sequentially[1].

See also

External links

References

  1. Execution Order (National Instruments Forums)