LabVIEW Idea Exchange

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

Add an option to disable debugging/enable optimization when building application

Status: New

There should be an option to fully enable optimization when building an application as to automatically remove performance impacts caused by diagram elements that shouldn't cause any.

 

As summarily declined by NI, this idea

http://forums.ni.com/t5/LabVIEW-Idea-Exchange/Improve-Diagram-Disable-performance/idc-p/3253939#M343...

 

shows that unless you manually go over ALL your VIs disabling debugging, Diagram Disables (that are supposed to not avoid executing some code!) you'll suffer a performance impact.

 

It is preposterous to expect the users to manually disable/reenable debugging on every single VI when building an application.

 

Please add an option to enable full optimization.

 

Untitled.png

12 Comments
JÞB
Knight of NI

I'm curious as to how this would interact with the ini file optomization settings?  Worst case scenario; say the ini option is left default (5) and full optomization is applied when building the app revealing:

  • Longer compile time
  • a hidden race condition
  • or an optomization corner-case that changes code behavior between optomization applied and optomization not applied

Unless you stuck the word "Full" in there unintentionally


"Should be" isn't "Is" -Jay
X.
Trusted Enthusiast
Trusted Enthusiast

I created an app with the test VI I used in the related thread to test the hypothesis that putting all VIs in a root virtual folder and applying the debug off option indeed applies this within all subfolders (with possibly the exception of lvlib and class files).

 

- without debugging off option applied during the build and:

1) no disable structure

2) debugging on in the VI:

T = 124.6 +/- 4.7 ms

 

- with debugging off option applied during the build and:

1) no disable structure

2) debugging on in the VI:

T = 17.2 +/- 2.3 ms

 

- without debugging off option applied during the build and:

1) disable structure

2) debugging on in the VI:

T = 186.7 +/- 7.2 ms

 

- with debugging off option applied during the build and:

1) disable structure

2) debugging on in the VI:

T = 16.1 +/- 1.3 ms

 

Therefore it would appear that this is a valid workaround.