LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

External code - difference between deploying and building application

Hi,

 

I am using a 3rd party databasing system to store data recorded by a cRIO setup. To do this, I have compiled the necessary library for VxWorks and have instaleld it. Everything was working great with LV 8.6 / RIO 3.0.1, however recently I upgraded to LV2009SP1 and RIO 3.4 to solve other issues I was having. Now my external code does not complete in time when I build an application, however when I deploy the vi using the run button in LV, then everything works great. For example, I timed one piece of code:

 

Application     107 ms avg

Deployed VI    10 ms avg

 

My question is, what is the difference between calling the code in an application versus in a deployed vi? I would think that they would behave the same as the library they are both calling does not change. Any thoughts?

 

Jon

 

0 Kudos
Message 1 of 3
(2,581 Views)

Hi Jon,

 

How have you tested the timing of the external code?  One thing to try, if you haven't done this already, is to create as simple a VI as possible that uses this external code.  Ideally, this would be one call to the DLL and timing code around this call. 

Jared S.
Applications Engineering
National Instruments
0 Kudos
Message 2 of 3
(2,554 Views)

Jared,

 

My code runs in time under LVRT 8.6 /RIO 3.0.1 and also when deploying it under LVRT 2009SP1 / RIO 3.4 . I have created a workaround for this problem by just dumping all of my raw data as a 2D array to the server and having a local program there sort out the diferent channels, the execution time is still higher than I expect, but is more than suitable for my task.

 

Jon

0 Kudos
Message 3 of 3
(2,542 Views)