Showing results for 
Search instead for 
Did you mean: 

real time TDMS memory leakage

Go to solution

 Hi, This is Lee.


 I got very serious problem.


 I'm, trying to build real time data logger.


 But I found that there is a memory leakage while I writing TDMS files.



 Let me explain further.


 Please Look in to my project I uploaded.


 There are program under real time target. Title is ""


 As you see, I think there are no memory accumulation component...


 But If I run that VI like 12 hours....there are slightly consuming patteren.


 Run or you can check memory.jpg.


 I don't know why, but after it loses 17kBytes of memory.


 Well...17 kBytes of memory is not a big deal right now, but I'm planning to run this logger like 2 months.


 This will eventually crash by memory loss.



 Thanks in advance.

0 Kudos
Message 1 of 19
Accepted by topic author real_time_ets

Hi Lee,


What do you mean by the memory leakage, did you see the memory increasment when you running the VI without stop it? Or did you see the memory leakage after you running the VI for 12 hours and STOP the running?


If after stopping running you still see 17 KB memory "leakage", then what about you close the VI? Since it's possible that VI itself maybe allocates some memory usage when running.

Message 2 of 19

First of all, thanks for your interest.


 I can watch memory leakage while I running that VI.


 I just logging file copy to my desktop and analyze.


 If I stop, well.....I don't know how check Real time machine memory when everything stopped. 😞


 I'm running VI at real time(cRIO-9022), so the situation is quite different running at desktop pc.


 Did you mean that check memory at task manager?(like windows XP style)


 I don't know whether real time has a task manager or not.





0 Kudos
Message 3 of 19

Real Time should have a similar tool as Task Manager which can watching the memory and CPU usage of RT target, which version of LabVIEW and LVRT you are using?

Message 4 of 19

I'm using LabVIEW 2010.


 As you proposed, I will check my program in that way.

0 Kudos
Message 5 of 19

While I'm checking now, Please Look at this picture.


I made a data logger. It streams data to TDMS ,close TDMS and reopen new TDMS in two hour interval.


 As you see, Memory keep consumed when I open and close.


 Even worse, it's not so periodically occurs.


 Check the graph you can see that memory consuming stops some point while I keep doing open and close TDMS.

0 Kudos
Message 6 of 19

I'm a little curious how you monitor the memory usage, you mentioned: " Run or you can check memory.jpg.", I opened but didn't find it's monitoring the memory usage, right? It's just TDMS Read reading out some data from a file...Are you talking about the physical memory usage of target or the data from TDMS Read?

Message 7 of 19

I've done following.


 1. Run Attached VI in real time platform.


 2. Get logged TDMS file via FTP.


 3. Analyze.



 My Real-time target memory is licking. While I just write and delete TDMS file.

0 Kudos
Message 8 of 19

Please confirm, what do you mean by "leak"? Does this mean the memory usage increment when you running this VI?

Message 9 of 19

Yes. It means 'constantly consumption memory'.


 I don't know why but It just consumes memory constantly.


 I'm so worried if that happens constantly, my logger eventually crash because of memory loss.


 Thank you! 🙂

0 Kudos
Message 10 of 19