I am using a C library that expects type LPVOID. I am passing large arrays of uint8 objects. Somewhere around the 5 MB input mark the library function stops processing the array. It seems that this could happen if MATLAB has some optimization that splits large arrays up to avoid having to find large contiguous blocks of memory. My question is: does this happen? Does MATLAB split large arrays or, when I allocate a 10 MB numeric array is it gaurenteed to be contiguous?