Can I create a matrix of size 10000X10000?
Mostrar comentarios más antiguos
I am in a situaion to deal with a matix of size 10000X10000. But MATLAB gives me "not enough memory " warning.
Is there any way to escape?
Can i do it in distibuted version of MATLAB?
Respuestas (5)
Sean de Wolski
el 2 de Mzo. de 2011
1 voto
Yes it's possible, I do it all of the time. You could get a 64bit version of MATLAB. Or you could use 'single' instead of 'double' so you consume half as much memory.
the cyclist
el 2 de Mzo. de 2011
1 voto
It's difficult to answer your question without more detail about your system, but this link contains lots of useful info that will likely be relevant to you:
Oleg Komarov
el 2 de Mzo. de 2011
10 000 * 10 000 * (8 bytes) ~ 763 megabytes
Type:
feature memstats
If the largest contiguous block is bigger than 763 megabytes then it is possible.
Oleg
1 comentario
Walter Roberson
el 2 de Mzo. de 2011
Note: feature memstats is not available on all operating systems.
Walter Roberson
el 2 de Mzo. de 2011
0 votos
Possibly in your situation you could use sparse matrices.
It might be possible to distribute your matrix between several matlab processes, but it would depend upon how you use it. Most of the tools in the Parallel Processing Toolkit would expect the entire array to fit in one process. There are some things you can do to use local arrays, but the situations in which those apply are generally situations in which you could reformulate your problem to operate sequentially on pieces of the array in a single process.
Walter Roberson
el 3 de Mzo. de 2011
0 votos
Depending upon what you are trying to do, possibly a technique I outlined in answer to someone else's question would be of assistance: see here
Categorías
Más información sobre Linear Algebra en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!