02-10-2022 06:51 PM - edited 02-10-2022 07:03 PM
Gu,
I mean the compiler is always running in the development environment. Period. That is a huge advantage LabVIEW has over any 3rd generation programming language. The run arrow breaks when the compiler cannot compile.
And just to reiterate, the RuntimeEngine usually only needs to call the compiled object and only loads the FP or BD when absolutely necessary. Load time would normally be buried in application startup in an exe unless it uses a rare dynamic call that must load a panel (such as, insert dynamically determined FP or BD into subpanel.) In those edge cases, the load time hit is on the caller's execution not the called vis execution.
Conclusion: comments are A OK👍
02-10-2022 07:21 PM
Hi JÞB
Thank you for your explanation.
In that case, there should have no difference between "run a source code program" in development stage and "run a compiled exe program" in terms of execution time.
Gu
02-10-2022 07:47 PM
@edmonton wrote:
In that case, there should have no difference between "run a source code program" in development stage and "run a compiled exe program" in terms of execution time.
If you remove debugging, hide panels, etc., yes they will behave the same.
02-10-2022 09:14 PM - edited 02-10-2022 09:17 PM
@crossrulz wrote:
@edmonton wrote:
In that case, there should have no difference between "run a source code program" in development stage and "run a compiled exe program" in terms of execution time.
If you remove debugging, hide panels, etc., yes they will behave the same.
There is a lot of that et cetera. Mostly beyond the original scope of your inital post. By default LabVIEW allows debugging in the development environment as well as automatic error handling in new vis and does not separate the VI Object from the Source Code. Some other properties and methods are also available in development only (VI Scripting) and others are read only in the RTE.
The exe build specs are used to change VI properties for optimal performance while the application builds although, every one of those properties could be set on every VI in your development project. Yeah, that's a lot of cetera for the et and we just scratched the surface for build specs.
02-11-2022 02:13 AM
@JÞB wrote:
And just to reiterate, the RuntimeEngine usually only needs to call the compiled object and only loads the FP or BD when absolutely necessary. Load time would normally be buried in application startup in an exe unless it uses a rare dynamic call that must load a panel (such as, insert dynamically determined FP or BD into subpanel.) In those edge cases, the load time hit is on the caller's execution not the called vis execution.
Note that the front panel is also loaded when control references, statically linked property or invoke nodes, static control\pane references, or event structures (to static control\vi events) are on the diagram. These things will also keep the FP in executables.
02-11-2022 09:30 AM
Thank you Wiebe