The following Tech Note seems to indicate that a matrix can be as large as the "Maximum Free Contiguous Block Size" reported by executing the 'feature memstats'command in MATLAB:
<http://www.mathworks.com/support/tech-notes/1100/1107.html>
However, this command resulted in the following output on my 64-bit Windows Server 2003 machine:
Physical Memory (RAM): In Use: 1596 MB ( 63ce2000) Free: 31002 MB ( 791a63000) Total: 32599 MB ( 7f5745000) Page File (Swap space): In Use: 1870 MB ( 74eaa000) Free: 33887 MB ( 845fc5000) Total: 35758 MB ( 8bae6f000) Virtual Memory (Address Space): In Use: 928 MB ( 3a041000) Free: 8387679 MB (7ffc5f9f000) Total: 8388607 MB (7fffffe0000) Largest Contiguous Free Blocks: 1. [at 180401000] 8379758 MB (7fdd6e4f000) 2. [at 7fff0000] 3072 MB ( c0010000) ... ans = 8.7868e+012
However, executing the following command:
A = zeros(2^40,1,'uint8');
results in an "Out of Memory" error.
Further, executing MEMORY results in the following output:
Maximum possible array: 33885 MB (3.553e+010 bytes) * Memory available for all arrays: 33885 MB (3.553e+010 bytes) * Memory used by MATLAB: 331 MB (3.474e+008 bytes) Physical Memory (RAM): 32599 MB (3.418e+010 bytes)
Best Answer