使用matfile函数索引大矩阵会导致matlab崩溃

时间:2015-04-11 04:33:40

标签: matlab memory matrix

%A,B,C,D和& E都是大小的矩阵(1500,1500,3500)。

A  =  matfile('FileA.mat')
B  =  matfile('FileB.mat')
C  =  matfile('FileC.mat')
D  =  matfile('FileD.mat') 
E  =  matfile('FileE.mat')

%当我尝试运行以下代码时,matlab崩溃了。我相信这是一个记忆问题。

SimilarIndex =       A.Matrix       >     5  ...
                   & B.Matrix       <     2  ...
                   & C.Matrix       >     4  ...
                   & D.Matrix       <     8  ...
                   & E.Matrix       <     1      ;

%无论如何以内存索引这些矩阵是否可行?

%感谢帮助人员。

1 个答案:

答案 0 :(得分:2)

一个大小的矩阵(1500 * 1500 * 3500)包含7875000000个元素。如果我们假设矩阵元素是单精度浮点值,我们需要7875000000 * 32位或大约30千兆字节的内存来存储一个矩阵。甚至可以使用这个大小的矩阵,或者如果你有64千兆字节的内存(或更多),或者矩阵是sparse