Regarding the size of matrix that Matlab can handle

6 views (last 30 days)
How big matrix that matlab can handle? In my project, the program may need to generate and operate on a matrix with size of 50000*5000, and each entry is a double value.
  2 Comments
Walter Roberson
Walter Roberson on 15 Feb 2012
Would this be a sparse matrix or not sparse?
liangjian
liangjian on 16 Feb 2012
Yes, it is sparse matrix. For instance, I need to use a third-party package, which is assumed to handle normal matrix only. Is there a way that I can save this matrix to a sparse matrix, and let it automatically be expanded when used by that third-party package.

Sign in to comment.

Accepted Answer

Titus Edelhofer
Titus Edelhofer on 15 Feb 2012
Hi,
it depends on version and operating system: on a 32Bit OS this will definetely fail, because the matrix would need about 1.8GB of memory. On a 64Bit machine (with reasonable new MATLAB release).
doc computer
shows the maximum number of elements allowed in an array.
Titus
  1 Comment
liangjian
liangjian on 16 Feb 2012
It is maybe a genenic question, how to get the approximate memory usage, like 1.8GB, based on the matrix size and element type?

Sign in to comment.

More Answers (2)

Andreas Goser
Andreas Goser on 15 Feb 2012
On 32 bit Windows machines - still the most common platform - a practical size of matrices ends with about 500MB. Always remember that you need memory for the operation and simply loading is not enough.

Gregory Vernon
Gregory Vernon on 15 Feb 2012
You could look for ways to reduce your grid size. Are there symmetries you can take advantage of? Can you use a skewed or adaptive mesh? Do you NEED double precision?

Categories

Find more on Sparse Matrices in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!