LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

memory is full error

Solved!
Go to solution

Hello all, can someone help me with the following: 

I have old VI running in old LV basic version and I'm receiving memory is full error. I have attached pic for that error below. 

Thank you 

0 Kudos
Message 1 of 9
(310 Views)

See Memory Is Full Error in LabVIEW

-------------------------------------------------------
Applications Engineer | TME Systems
https://tmesystems.net/
Message 2 of 9
(282 Views)

@ZYOng wrote:

See Memory Is Full Error in LabVIEW


Addition 1: Creating typed refnums of certain types (Queue, Notifier) are limited to approximately 1 million elements. This has to do with how the references are handled internally.

 

The error  message "Memory is full" is one I have seen by continually opening Queue references in a loop and forgetting to destroy the references. This leads to, after 1 million iterations, an "out of memory" error. It can be confusing is your application memory usage is actually low.

 

Addition 2: If LabVIEW wants to allocate memory, it must do so for most data structures as a contiguous block of memory. While your memory usage may be relatively low, memory fragmentation can lead LabVIEW to be unable to locate and single block of memory large enough for your allocation, again resulting int he "out of memory" error while there should technically be plenty of memory available for the work at hand.

0 Kudos
Message 3 of 9
(263 Views)

You can help the community help you by following the guidance in the Posting Section of Using the NI Community.

Doug
Enthusiast for LabVIEW, DAQmx, and Sound and Vibration
0 Kudos
Message 4 of 9
(261 Views)

@Omar-Abdelhameed wrote:

Hello all, can someone help me with the following: 

I have old VI running in old LV basic version and I'm receiving memory is full error. I have attached pic for that error below. 

Thank you 


There's a mistake in the code. Only if you post it we can help (more). 

0 Kudos
Message 5 of 9
(251 Views)

@Omar-Abdelhameed wrote:

Hello all, can someone help me with the following: 

I have old VI running in old LV basic version and I'm receiving memory is full error. I have attached pic for that error below. 

Thank you 


Based in the sparse information posted so far, we cannot help.

 

  • What is "old"? LabVIEW 4.0? LabVIEW 2012? Older? Newer? 32bit? 64 bit?
  • Is this a LabVIEW version that is know to be still compatible with the current OS?
  • There is no such thing as "LV Basic". There is "LabVIEW base" and there is "BASIC", a completely different programming language.
  • Did the program work before? If so, what happened in the meantime (OS upgrade? Computer upgrade? LabVIEW update? Driver updates? etc.).
  • What does the program do? Who wrote it? What is an experienced LabVIEW programmer or just some intern hack?
  • Are you sure everything is connected correctly and you are using it correctly? Do all controls have reasonable values? For example if one of the controls is left at zero, a division could result in "Inf", which will exceed the memory of even the most powerful computer if it tries to initialize an array of that size.
  • Does the error occur almost immediately or only after some time?
  • Can you attach the VI and its dependencies?
0 Kudos
Message 6 of 9
(231 Views)

- I mean LV base. 

- The version is LV2013 32 bit.

- The program was working, no OS upgrade, no computer upgrade, no lv upgrade. 

- Program was acquiring different sensors on one integrated application and write them on file. 

- What do you mean by some intern hack?

- Everything connected well. 

 

0 Kudos
Message 7 of 9
(203 Views)

What does task manager say about the memory usage?

 

Is it increasing over time?

 

There could be things in the application that conditionally grow memory.

 

These could be 'legitimate' things, like opening a log that keeps adding message. This will grow memory over time, until eventually you get an out of memory.

 

It could also be any of the things mentioned in the links provided.

 

If the application didn't change, it could be caused by how the application is operated. It will be hard for us to find out. Sometimes one user crashes an application all the time, while 10 other users nor the programmer can crash it even if they try really hard...

 

The "out of memory" could be a red haring. If you use dll calls or code that use dll calls, "out of memory" is an error that comes up often.

 

Steps to solving this are, in general:

+ Try to figure out what changed (and when)

+ Try to reproduce (try to make it worse, try what makes it go away)

+ Try to isolate the bug (make a SSCCE)

+ Code evaluation (code is required)

 

It's a puzzle. We're only seeing 1 or 2 pieces, from the side...

Message 8 of 9
(195 Views)
Solution
Accepted by topic author Omar-Abdelhameed

@Omar-Abdelhameed wrote:

- I mean LV base. 

- The version is LV2013 32 bit.

- The program was working, no OS upgrade, no computer upgrade, no lv upgrade. 

- Program was acquiring different sensors on one integrated application and write them on file. 

- What do you mean by some intern hack?

- Everything connected well. 


You did not say if all controls have reasonable values. Did you check?

Does the error occur almost immediately or only after some time?

I was curious about the quality of the code. If it was written by someone with little experience, there could be systemic problems. Can you show us the code?

0 Kudos
Message 9 of 9
(172 Views)