Quantcast
Channel: LabVIEW topics
Viewing all articles
Browse latest Browse all 69376

Asynchronous call memory leak on LV2019

$
0
0

I'm having problems in upgrading an application from LV2015 sp1 to LV2019 sp1. I detected memory leak after running the executable recompiled by new version of LabVIEW.  After some debugging I found that this problem is related to the asynchronous call VI. Calling the VI several times without closing the reference to it seems to behave differently in each version of LabVIEW. The figure below shows the minimal code needed to reproduce this issue. The test.vi just makes a simple addition operation and it is called with call and forget flag enabled.

 

test.png

 

 

I tested this code on both versions of LabVIEW. The 2015 version is installed on a Windows Server 2008 R2 and the 2019 version on a Windows Server 2012. The handle count curve looks very similar on both version of LabVIEW. However, the result of memory allocation is totally different. On 2015 version the memory allocation seems to happen by chucks of data, steadying after some time. While in 2019 this process happens more smoothly but keeps increasing the memory allocation indefinitely.

 

Performance LabVIEW 2019Performance LabVIEW 2019Performance LabVIEW 2015Performance LabVIEW 2015

 

 

As a workaround I could open and close the VI reference every time it is called, but this could increase latency on the application execution.

 

Is this behavior expected from LabVIEW 2019?


Viewing all articles
Browse latest Browse all 69376

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>