06-29-2007 03:32 AM
06-29-2007 04:05 AM
Such big data structures are always a bit "difficult". Firstly you could check if you use the smallest possible datatype (e.g. U8 instead of U32). Secondly, and that's the problem most of the time, are copies of data. Check if there are unnecessary copies of your array - so for instance a local variable makes a copy.
Extract of the LV help:
Local variables make copies of data buffers. When you read from a local variable, you create a new buffer for the data from its associated control.
06-29-2007 04:26 AM
06-29-2007 04:35 AM
06-29-2007 04:52 AM
06-29-2007 05:00 AM
I get the same error (WinXP, 1GB RAM).
Hm - simply calculated a DBL uses 8B => 8B * 5000 * 6000 = 240'000'000B = 228.8MB. Maybe there is a restriction in Windows so that a request for a datablock > X MB is not allowed. I don't now the caveats in MS memory management.
This could be something for our well-known professionals 😉
06-29-2007 07:46 AM
06-29-2007 07:55 AM
If I was able to download the LV evaluation version for Linux I would try it at home as well.
But obviously I am to dumb to get it from NI's website
07-02-2007 03:07 AM
Hi All,
I digged it down a while.
Looks like the limitation is not in the datastructure itself but in the array indicator.
I'm adding a little piece of code that firstly allocates a matrix 5000x6000 of random double, than allows user to select a 4x4 sections of this matrix without having a 5000x6000 indicator.
I hope the code is clear enough.
Bye.
07-02-2007 03:25 AM - edited 07-02-2007 03:25 AM