Out of Memory,Matlab

Matlab中“out of memory”的问题总是相当让人头疼,比如大矩阵做运算时,一不小心就出现了。

出现该问题的原因在于:内存在使用过程中,经过不断的分配和释放过程,导致被分割成许多不连续的区域(即内部或外部碎片)。而Matlab中的矩阵是以块(block)的形式存储的,也就是说当Matlab在为即将存储的矩阵划分block时,如果没有相应大小的连续内存可供分配,就会报告“out of memory”的错误。

这也解释了,为什么Matlab刚启动的时候,要比反复运行程序一段时间,出现out-of-Memory错误的可能性要低。


memory查看内存使用情况
(Memory函数当前仅可用于PCWIN和PCWIN64,即32位和64位Windows操作系统。)

memory指令用于展示Matlab当前正在使用和可用内存的大小(memory displays information showing how much memory is available and how much the MATLAB® software is currently using.):

>> memory
  1. Maximum Possible Array // 连续空闲内存块的大小,MATLAB当前能够创建的单个数组的上界【the size of the largest contiguous free memory block.As such, it is an upper bound on the largest single

你可能感兴趣的:(MATLAB编程,matlab,存储,内存)