LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

LabVIEW "Allow debugging" option efficiency in executable

I tried searching for this but too many false positives involving debugging an exe, or the same old line about code running faster in IDE without it checked.

 

But does this option being on/off for individual VI's affect the efficiency/speed of a built application?

 

Sorry if I'm asking a dumb question, but I've never actually seen this specific question answered.

0 Kudos
Message 1 of 4
(2,990 Views)

Enabling debugging limits the amoutn of compiler optimisations of your code. Disabling debugging for any VI will improve the performance of any CPU-bound activities. I found this fairly basic description that also describes ways of customising optimisation:

 

http://zone.ni.com/reference/en-XX/help/371361J-01/lvhowto/compiler_optimizing_for_execution_speed/

 

Obviously the efficiency increases depend entirely on the actual code being compiled. You can always profile your own code (VIs) to see the performance change.

 

EDIT: I should point out that the Enabled Debugging feature is for VIs themselves, not the built application. When you enable this feature for a build, you are effectively telling the Application Builder "Ignore what I have specified for each VI - I want to  Enable Debugging on them regardless".

 

https://lavag.org/topic/14151-build-specification-enable-debugging/

 

0 Kudos
Message 2 of 4
(2,980 Views)

Thanks for the reply, I had actually forgotten about that page.

 

I should have specified, I meant the "Allow debugging" option in the source code of the VI, not referring to any option in a build specification.

0 Kudos
Message 3 of 4
(2,961 Views)

@Ben_Phillips wrote:

Thanks for the reply, I had actually forgotten about that page.

 

I should have specified, I meant the "Allow debugging" option in the source code of the VI, not referring to any option in a build specification.


I should probably also remind you of the default storage setting for a VI - both the source and compiled code for a VI are stored in the same file (seperate compiled code alters this behaviour but is disabled by default). This is different than other languages where the source and built files are completely seperate entities. This means that Enabling debugging for a VI affects the compiled code stored in the VI file for any development environment that executes it. 

0 Kudos
Message 4 of 4
(2,951 Views)