pawhan11 Posted January 28, 2021 Report Share Posted January 28, 2021 I have app with 30 PPLs that have to be compiled before main application. It takes huge amount of time (30min) for build, probably due to heavy use of classes. I use simple powershell script to execute those builds in order, but most of them could be executed in parallel. Is it possible to start multiple instances of LabView CLI to 'cheat' this? Quote Link to comment
Antoine Chalons Posted January 28, 2021 Report Share Posted January 28, 2021 (edited) You can run multiple instances of the same LabVIEW version by adding the following key in your LabVIEW.ini file AllowMultipleInstances=True I have never tried to have more than one L Instance running the application builder at the same time... Now that I think of if it, I've never even tried to use an instance for coding while another instance is compiling. LabVIEW crashes so well without trying all that... I rarely run multiple instances at the same time anyway. The alternative I can suggest is to use a dedicated build machine (virtual or not depending on you IT infrastructure) Edited January 28, 2021 by Antoine Chalons 1 Quote Link to comment
Jordan Kuehn Posted January 29, 2021 Report Share Posted January 29, 2021 Following. Mostly because it's very common that I'll kick off an RT build and want to move on to working on the Host application. Or the other way around. IMO the different projects shouldn't block each other during a build, but I'm sure there's some linking thing that they didn't want to solve so instead they lock the entire IDE. Quote Link to comment
JKSH Posted January 29, 2021 Report Share Posted January 29, 2021 (edited) 47 minutes ago, Jordan Kuehn said: Following. Mostly because it's very common that I'll kick off an RT build and want to move on to working on the Host application. Or the other way around. IMO the different projects shouldn't block each other during a build, but I'm sure there's some linking thing that they didn't want to solve so instead they lock the entire IDE. Related idea: https://forums.ni.com/t5/LabVIEW-Idea-Exchange/Allow-users-to-continue-working-when-a-build-is-in-progress/idi-p/2638771?profile.language=en Edited January 29, 2021 by JKSH Quote Link to comment
pawhan11 Posted January 30, 2021 Author Report Share Posted January 30, 2021 Seems that it is not possible directly using LabVIEWCLI, i managed to 'cheat it' by starting multiple LV instances, one instance was building big proj that takes 30 min, another instance did simple library that takes 40sec, they seemed to work independently and time of individual builds did not increase. Quote Link to comment
pawhan11 Posted January 30, 2021 Author Report Share Posted January 30, 2021 Attached working proof of concept with LabVIEW CLI, To make it work: Disable Error message on logger instance (FGV in C:\Program Files (x86)\National Instruments\Shared\LabVIEW CLI\Operations\Utilities\Logger) Enable multiple instances of LabVIEW Spawn few labview processes that will run Builder.vi and pass instance parameter eg \..\..\Labview.exe \..\..\Builder.vi -- 1 Copy ExecuteBuildSpecAsync_class folder to C:\Program Files (x86)\National Instruments\Shared\LabVIEW CLI\Operations Start it the same way from labview CLI but use ExecuteBuildSpecAsync insstead of ExecuteBuildSpec, should compile on free running builder or throw exception builder.zip 2 Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.