matlab怎么增加内存

2017-02-23

matlab怎么增加内存?在用MATLAB做图像处理时 经常会碰到内存溢出的情况,下面是小编收集整理的几种解决方法,希望对大家有帮助!

matlab内存溢出的解决方案(整理)

1)增加虚拟内存的方法是不可行的

2)使用PACK:PACK可以将matlab中的变量导出到磁盘中,以增加可用内存

3)减少变量的内存开销

4)64位架构:采用64位的软硬件架构

5)3GB 切换(3GB switch):由于在windows上运行matlab时,如果内存的使用超过约1.7G左右就要出现这种错误,而无论你有多大的内存也没用。幸好现在在Windows XP上,MATLAB现在支持3GB切换(3GB switch)启动选项(boot option),配置额外的1GB的可寻址内存到每个程序上。这增加了你可以储存到MATLAB workspace中资料的总量约到2.7 GB。这相当于33亿的精度值。此新增的内存区块和MATLAB使用剩下的(内存)并不是连续的,所以你不能建立一个数组来填满此空间。

6)更有效的优化方案调整Java虚拟机可分配的内存大小

matlab java.lang.OutOfMemoryError

可以增加最大内存设置.

1. 查找matlab根路径.在matlab命令行中敲入:matlabroot

显示根路径,如:C:MATLAB7

2.查看当前Java虚拟机最大堆内存, 敲入:java.lang.Runtime.getRuntime.maxMemory

3.查看Java虚拟机版本.敲入:version -java

4.在 $MATLABbin$ARCH 路径下新建java.opts文件.

$MATLAB是根路径,例如C:MATLAB7

$ARCH是系统架构.例如win32,则在C:MATLAB7binwin32下新建java.opts文件.

5.用记事本打开java.opts文件,

对于不同的版本的Java虚拟机,输入:

The following table shows the default settings MATLAB uses for versions of the JVM:

JVM Initial Heap Size Max Heap Size

1.6.0 -Xms64m -Xmx128m (32-bit)

-Xmx196m (64-bit)

1.5.0 -Xms64m -Xmx96m (32-bit)

-Xmx128m (64-bit)

1.4.2 -Xms16m -Xmx96m

1.3.1 -Xms16000000 -Xmx64000000

1.2.2 -Xms16000000 -Xmx64000000

1.1.8 -ms16000000 -mx64000000

例如我的Java是1.4.2,在java.opts文件写入-Xmx96m,保存就ok啦

如果输入错误就报错:warning : Failed to start to Java Virtual machine

6. 重启matlab,敲入java.lang.Runtime.getRuntime.maxMemory

显示最大内存改变,设置成功.

更多相关阅读

最新发布的文章