# Best practices for real-time LabVIEW ↔ Julia data exchange

**URL:** <https://discourse.julialang.org/t/best-practices-for-real-time-labview-julia-data-exchange/132319>\
**Category:** General Usage\
**Tags:** question, data, labview\
**Created:** [September 12, 2025, 11:47am UTC](https://discourse.julialang.org/t/best-practices-for-real-time-labview-julia-data-exchange/132319 "2025-09-12T11:47:40Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![Palli](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/palli/32/3380_2.png) [@Palli](https://discourse.julialang.org/u/Palli)\
**Post date:** [September 12, 2025, 12:27pm UTC](https://discourse.julialang.org/t/best-practices-for-real-time-labview-julia-data-exchange/132319/3 "2025-09-12T12:27:37Z")

</div>

You want to call Julia from LabView right? I don’t know much about LabVIEW, if it can call C then it can call Julia in-process. That would be fastest (realtime isn’t about speed really, rather predictability). Shared memory though as fast. From one process to another with Julia, maybe still ok, i.e. with:

I think though LabVIEW0.jl would be ok for you, using ZeroMQ;

> [@\[ANN\] LabVIEW0 - Calling Julia from LabVIEW using ZeroMQ](https://discourse.julialang.org/t/ann-labview0-calling-julia-from-labview-using-zeromq/75033):
>
> I’m happy to announce this package. The package is alreary registered. For documentation see on GitHub [https://github.com/Eben60/LabVIEW0.jl/blob/main/README.md](https://github.com/Eben60/LabVIEW0.jl/blob/main/README.md) and links therein (I still have to learn Documenter). A number of examples are provided, and documentation contains screenshots of LabVIEW VIs, so you don’t need LabVIEW installation to get the first impression. BTW, though LV is commercial (and not cheap), there is now a [Community Edition](https://www.ni.com/en-ie/shop/labview/select-edition/labview-community-edition.html), which is free for private use and specifically …

> The latency of Julia call is about 1-2 ms. 1 MB data transfer (forth and back) in binary format “door to door” - from numeric array in LV back to numeric array in LV, inclusive all necessary data transformations in LV and Julia, takes about 20-25 ms on my notebook. At about 100MB transfer, LV may get out-of-memory (8 GB RAM installed).

> [@Integrate Julia scripts into NI Labview](https://discourse.julialang.org/t/integrate-julia-scripts-into-ni-labview/42281):
>
> Hello, how about everyone, my most sincere and cordial greetings to all who read this post. I am a fairly new user and amazed at how great it is to use Julia as an alternative to other languages. My question is a bit silly but I still have no where to start, I would like to generate DLLs of some functions that I generate later in Julia. I have generated these DLLs before in C # within visual studio but they are really deficient, I would like to know if I can generate them in Julia due to thei…

Julia CAN do hard-realtime, but then we’re not talking idiomatic Julia code nor able to run on standard hardware (no hard-realtime can); I think you’re talking about soft-realtime, where memory allocations ok, and Julia should be then fine on standard hardware.

ZeroMQ CAN use TCP, or work only on same machine, seemingly better for you. I’m not sure what the package does, or allows all of its options? Maybe all are available to you or at least what you need.

---

_[View the full topic](https://discourse.julialang.org/t/best-practices-for-real-time-labview-julia-data-exchange/132319)._
