LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Memory use up

I am using DAQ5102 to collect data and display.
 
I compile the program and install into several pc. All pcs run fine except one.
 
It will pop up and say not enough memory to do the operation, when I collect the data for the second time.
I restart the pc, but same thing happen again.
 
Any suggetion? I saw the program ocuppy 78M in the memory for it self. Some other LV application ocuppy 30M total.
 
 
0 Kudos
Message 1 of 4
(2,812 Views)
Hmmm.. surprising...

- are the PCs exactly the same (same memory configuration) ?
- are the executable the same ?
- are the settings, for data acquisition or whatever, the same (buffer size, frequency, etc) ?

By the way, you said your application is using 78M, but if you follow it from the moment you start it, is it increasing, or does it remain constant ?

Maybe you can post you code, or a part of your code ?

Hope these suggestions can help 😉

We have two ears and one mouth so that we can listen twice as much as we speak.

Epictetus

Antoine Chalons

0 Kudos
Message 2 of 4
(2,785 Views)

The pc is almost the same, but only has 256M ram, the executive is the same.

I just want to know how to check the memory usage inside the running LV exe. And if there is memory leak?

Any method to recycle the memory?

Thanks

 

 

0 Kudos
Message 3 of 4
(2,763 Views)

It is not unusual for LabVIEW itself to use 256MBytes of RAM, depending on the size of the application and the data needed. The best way to diagnose this issue is to watch the Task Manager (or it's equivalent if you are on Mac or Linux) while the program runs to see if you are actually running out of memory. If you are, there are several options. See the tutorial Managing Large Data Sets in LabVIEW.

If you are not running out of memory, you probably have a memory fragmentation issue. LabVIEW arrays must have contiguous memory space. If you try to allocate or grow an array, and there is not a large enough space in memory to hold the new array, you will get an out-of-memory error. The solutions are essentially the same as before. You will need to chunk your data and reduce your buffer sizes until it fits. You will need to look at the tradeoff in efficiency of buffer size reading from your DAQ card vs. how much memory you can use.

Please give us more details (buffer size, data type, acquisition speed) and post your code so we can help you better.

0 Kudos
Message 4 of 4
(2,744 Views)