12-20-2022 10:31 AM
I am acquiring the continuous data using a Chassis and DAQ card at a sampling rate of 50 kHz. There is no issue with the acquisition. Next, I am required to save the data of 10 seconds duration in files in tdms format and each file should have a different name. I have used the producer/consumer approach. Everything is working fine except that the code stop after 2 hrs with a pop-up error message as attached stating that LabView memory is full. Please suggest the possible solution so that internal memory remains free and the acquisition will not stop.
Thanks in advance.
Solved! Go to Solution.
12-20-2022 10:41 AM - edited 12-20-2022 11:04 AM
There is nothing attached.
Obviously, you probably need to show us your VI. There are many ways to run out of memory. Once we see the code, we can probably tell.
12-20-2022 10:44 AM
Are you using real time OS or Windows?
12-20-2022 11:00 AM
@kapil2408 wrote:
I am acquiring the continuous data using a Chassis and DAQ card at a sampling rate of 50 kHz. There is no issue with the acquisition. Next, I am required to save the data of 10 seconds duration in files in tdms format and each file should have a different name. I have used the producer/consumer approach. Everything is working fine except that the code stop after 2 hrs with a pop-up error message as attached stating that LabView memory is full. Please suggest the possible solution so that internal memory remains free and the acquisition will not stop.
Thanks in advance.
Memory full error indicates that the array handling in inefficient resulting in utilizing a lot of memory and not releasing them appropriately. It would help to share the VI (preferrable in 2019) to guide you better.
12-21-2022 04:45 AM
Thanks for your prompt reply. Please find the attached code and error message.
Regards,
12-21-2022 04:46 AM
Thanks for your prompt reply. Please find the attached code and error message. Please help me to manage the memory issue.
Regards,
12-21-2022 04:47 AM
Windows.
Please find the attached code and error message.
Regards,
12-21-2022 04:49 AM
Thanks for your prompt reply. Please find the attached code and error message. Sorry for the missing attachment. Please find it now.
Regards,
12-21-2022 08:43 AM - edited 12-21-2022 08:44 AM
Hi kapil.
you don't need to answer 4 times in a row with the same answer, we all can see your message as it's a public board!
Your VI shows some mis-conceptions!
12-21-2022 08:51 AM
You are running out of memory. Saving is much slower than DAQ.
Instead of saving data every 10 sec, you could save data in one file, or every hour to avoid too many TDMS open/close calls. You could do that outside the loop. The TDMS data can be split to 10 sec/file in post process.
Saving data loop can be moved to a SubVI, running in a non-UI thread.
If you are using LabVIEW 32 bit, you should consider convert to 64 bit. So you can utilize more RAM (>4GB).
If you want to do DAQ much long than 2 hours, software solution might not be enough.
You could get more RAM, get SSD...