Hello,
I have programmed various algorithms for preprocessing of large data sets, mainly using the linear algebra toolkit.
I am having memory problems with labview when I run my program - even when testing with a 'small' data set of 2000 columns and 2000 rows. I get messages like: Labvie out of memory; memory full; not enough memory to complete operation. And these messages come very soon after I import the data - i.e. i do not get much chance to do much processing!
I will appreciate help with this. I have tried to streamline my code, but I am sure I am still missing things. I know it is difficult without seeing the code, but I will try to explain. Briefly, this is how the program works:
In the front panel I use a tab display, where each tab displays: 1. a data import, where the user may select varaibles to analyse, etc. and 2. - 6. display and allow user to run various techniques for preprocessing and analysisn these data.
In the back I use a case structure to go through the data import and different techniques. This case structure sits inside a while loop, which I use to get the program to run. The selector terminal of each case is used to run the programs in each tab. I hope you can see what I have done and this is making sense.
In the first tab, once the data is in and the user selects the data variables to analyse, etc. , the data is displayed in arrays and in a xy graph so that the user may see if all OK before processing. The selected data is passed on to the next case (and other cases, depending on what is needed) for processing. The data is passed on using local variables.
In this second case, I do some simple math manipulations to the data and I use case structures arranged one after the other to allow the user to select the best preprocessing techniques for their data. Once they have preprocessed it, I again use local variables to pass this data on to the next case for analysisng the data..
In the third case I allow the user to do some more analysis and their results can be used for more processing in case four, etc. etc then pass these results to case five and then after more analysis to case six. So as you can see I do pass data on from case to case using local variables - this may be a problem (?) but I do not know how else to do it!
Now in the front pannel I also use xy graphs and waveform graphs to display data - I have tried to minimie their use, and I have, but really they are very useful so I would like to keep them. One thing I have done with regards to graphics - which I think helps is I have used a second while loop, where the plotting is done. So again I use local variables to pass the data out of the different cases in the first while loop and into the second for plotting.
I will really appreciate some pointers on why I am having this 'Labview out of memory' problem and how I may fix it. The dataset I am using for testing is not particularly large. I think it is my lack of programming skills....
Thanks.