LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Where do the values from NI Distributed System Manager come from?

Solved!
Go to solution
Highlighted

Hello, 

 

I am using cRIO 9065 and I have this problem with memory leaks. I need to see and log the available memory over time. I used System Session > FreePhysMem, which returns the same values as command "top" in Linux. This on the other hand shows very different results than NI Distributed Systems Manager. Linux shows about 30 MB of available memory less and peaks to 5 MB (!) of available memory during certain stages of operation, whereas Manager memory is way more constant over time and actually doesn't peak that low. My hypothesis is that Labview allocates more memory than necessary and Manager counts with that, on the other hand Linux shows actual real free memory. 

 

Also during slow memory leak that I'm experiencing, Linux starts showing these 5MB peaks few minutes after startup, but Manager free memory slowly diminishes and after 20 hours or so it gets to 0 and cRIO crashes.

 

My question is where does the Manager gets these values and how can I obtain it inside LabVIEW.

 

Thank you.

0 Kudos
Message 1 of 3
(417 Views)

If 'top' returns what you want you can probably use the System Exec to call 'top' (or 'htop').

0 Kudos
Message 2 of 3
(387 Views)
Solution
Accepted by topic author Thomas444

This knowledge base article touches on the differences between Linux memory reporting and DSM memory reporting. The code example provided shows the proper way to query your application's memory usage under Linux RT, and how to monitor the memory usage from within your LabVIEW application.




Certified LabVIEW Architect
Unless otherwise stated, all code snippets and examples provided
by me are "as is", and are free to use and modify without attribution.
0 Kudos
Message 3 of 3
(371 Views)