LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

String under RT & Memory leak

Memory allocation and RT :confusion

I use LAVIEW RT7.1 and I have an Out of memory error after about 1 or 2 weeks
( 24/24 hours 7/7day running)

Few questions
1) "On profile windows, you can track only the VI that used memory under Windows (not under the Real time target"
is it true, because I have saw on an web cast these (on LV 8.XX)


2) If profile vi tool work with LV RT 7.1, I don't understand  very well the snapshot functionnality
You have only final time statistic  for all when you stop VI
Snapshot is it worthless?
Is it the same for memory statistic

http://digital.ni.com/public.nsf/websearch/9515BF080191A32086256D670069AB68?OpenDocument

3)Real time system manager help me to kwon the memory used by process
but it can't show me memory used by others sub VI one by one
It will be more handy to detect where there is a bad  memory Allocation

4) and finally I suspect my string concatenation to be the source of my problem.
But before making huge correction i must be sure about string functions
 "match pattern" and "scan string for token" Are they compatible for RT
Can you explain me how to code a parser in a normal priority thread without Out of memory error


Thanks to all for your help





0 Kudos
Message 1 of 2
(2,597 Views)

Hi,

 

On profile windows, you can track only the VI that used memory under Windows (not under the Real time target).

 

You can found on this KB:

 

http://digital.ni.com/public.nsf/allkb/F4D776187EFCC30986256EFC007FC922?OpenDocument , all information about how use correctly the Real Time System Manager. You also can access RT memory information from within the LabVIEW Real-Time 7.0 and higher development environments when targeted to an RT target by selecting Operate » RT Engine Info.

 

The Snapshot option publishes a static image of the specified VI.

 

Finally, I thing you have to ‘Set Size’ of your array. If it is not possible to know how much memory to pre-allocate, then send the data back to a host controller and use an unbounded FIFO on the host or use Real Time Shared Memory VIs.

 

    Benjamin R.


Senior LabVIEW Developer @Neosoft


0 Kudos
Message 2 of 2
(2,566 Views)