LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Buildup EXE too big

Solved!
Go to solution

Hi, turbot.

 

I think you have mixed here absolutely different and not related problems.

 

So, you wrote:

 

> How big is your exe normally, is 28M too big or it is ok for LV.

28M is normal for the application contained 2000+ VIs. If you have application with only few VIs, but with such disk usage - it means that you have stored data on the front panels or diagrams (arrays, clusters, etc), which can be stored externally. How many VIs in memory you have?

 

>The problem is after buildup, it seems runup very slowly. Since I have a heartbeat check with the server side program. it cannot runup all the time.

Execution speed absolutely not related  with size of the application (doesn't matter - on the disk, or in the memory). You may have 150KB application (25 MB in memory) which is slow, or 15 MB application with 500MB memory usage which is fast. The only amount of used cycles, polling loops, etc is important.

If you have different behaviour in the development mode and in builded application - then you should found the bottleneck. I will recommend to remove or isolate code in application part to part, so you will localize the problem.

 

>Also the log file is empty, at least should be some startup trace in it.

Put some debug information - where you writing the log file, check error outputs after writing. Remember, that paths to VIs are different in development mode and builded application.

 

>Is it possible to put some function into another DLL when compile it, but I worry I use few global variable in all the important vi for Exit.

Use dynamically loaded LLBs as mentioned above

 

>Also very strange, I never use a library, but it need to be included into my subvi folder, or the compile cannot made. Then many DLLs will be related into the buildup.

If you have pretty simple and straight architecture (no dynamically called VIs, no "special" toolkit used, such report generation toolkit, etc), then you should include only one VI into build - your StartUp VI. All other SubVIs and dlls will be added to the application automatically.

 

Andrey.

 

0 Kudos
Message 11 of 12
(570 Views)

From discussion above:

 

"- How much static data (aka constants) are kept in the program?

Very few.

- Do you use background graphics in the panels?

No."

 

Well, I can give you very small tool here (LV8.6). With this "converter" you can take look inside of your builded application. Just select your application and run this VI. Then your application will be converted to the directory (same name as application) contained all VIs used in application. Just sort content of this directory by size and see which VIs taking most place.

 

Disclaimer.

I will not give you any guarantees that it works properly. Use this at your own risk and so on...

  

Andrey.

 

0 Kudos
Message 12 of 12
(561 Views)