招生门户网站建设方案,信息化建设 公司网站,免费推广工具有哪些,国内最新新闻事件#xff08;1#xff09; 增加虚拟内存#xff1a;cmd - taskmgr 打开任务管理器#xff0c;查看物理内存和虚拟内存#xff0c;可观察matlab在运行过程中是否超过物理内存和虚拟内存。若超过#xff0c;增加虚拟内存的方法是不可行的。物理内存不足的时候可以通过将…1 增加虚拟内存cmd - taskmgr 打开任务管理器查看物理内存和虚拟内存可观察matlab在运行过程中是否超过物理内存和虚拟内存。若超过增加虚拟内存的方法是不可行的。物理内存不足的时候可以通过将电脑的虚拟内存设置得大一点可一定程度上缓解内存不足的压力但缓解是非常有限核心还是增加物理内存。
查看虚拟内存方法
1a右击“我的电脑”–属性–高级系统设置—-系统属性—–高级—-在性能框内点“设置” 1b性能选项对话框点第二个标签“高级” 1c页面文件大小后面的数字就是虚拟内存。 1d若分页文件大小0表示没有设置虚拟内存
增加虚拟内存方法 重复1a-1d 1e点击性能选项-高级-更改取消选定的虚拟内存页面顶部的复选框然后点击系统所在的驱动器接着点击自定义大小可在空白框中输入你索要设置的虚拟内存的大小即可。
2使用PACKPACK可以将matlab中的变量导出到磁盘中以增加可用内存。
如何使用PACK 当内存被分为很多碎片以后其实本身可能有很大的空间只是没有作构的连续空间即大的Block而已。如果此时Out of Memory此时使用pack命令可以很好的解决此问题。 help文件 用法 pack pack filename pack(‘filename’)
pack可以为用户整理内存的机制在于pack函数重新整理MATLAB工作空间中驻留的变量将原来断断续续的内存整理的连续起来这样原来断断续续的内存可能不足以存储大的矩阵而整理之后可以很显著的提高内存的使用效率最后重新分配的空间将是连续的避免掉原来断断续续的内存使用。整理步骤 1将base空间以及全局变量保存到一个mat文件 2清空工作空间中的所有资源 3重新载入mat文件中保存的base空间变量和全局变量然后删掉mat文件
备注 pack不能提高MATLAB所拥有的虚拟内存数量如果想要增加这个数量也就是使MATLAB单独变量的最大size或者同时存在的变量所占有的最大空间增大需要提高系统的虚拟内存。
Change the current folder to one that is writable, run pack, and return to the previous folder.
cwd pwd;
cd(tempdir);
pack
cd(cwd)
feature(memstats) % 查看matlab内存使用情况
3 打开计算机的3GB开关64位的WIN7不用调。
3GB切换3GB switch由于在windows上运行matlab时如果内存的使用超过约1.7G左右就要出现这种错误而无论你有多大的内存也没用。MATLAB现在支持3GB切换(3GB switch)启动选项boot option配置额外的1GB的可寻址内存到每个程序上。这增加了你可以储存到MATLAB workspace中资料的总量约到2.7 GB。这相当于33亿的精度值。此新增的内存区块和MATLAB使用剩下的内存并不是连续的所以你不能建立一个数组来填满此空间。
具体做法修改C:\ Boot.ini文件如下 [boot loader] timeout30 defaultmulti(0)disk(0)rdisk(0)partition(2)\WINDOWS “Microsoft Windows XP Professional” multi(0)disk(0)rdisk(0)partition(2)\WINDOWS”Microsoft Windows XP Professional” /3GB 注意后面的/3GB就是后加上的。重新启动系统再次运行matlab。 打开3GB的目的32位系统包括XP和32位的win7,默认情况下不允许某个程序调用超过2G的内存一旦超过就自动结束掉该程序。因此打开3GB就是为了允许大型程序比如3DMAX调用最多3G的内存 matlab java.lang.OutOfMemoryError
Java虚拟机内存不够用了.可以增加最大内存设置.
查找matlab根路径.在matlab命令行中敲入:matlabroot 显示根路径,如:D:\CMWang\MATLABR2014b
2.查看当前Java虚拟机最大堆内存, 敲入:
java.lang.Runtime.getRuntime.maxMemory
3.查看Java虚拟机版本.敲入:
version -java
4.在 $MATLAB\bin\$ARCH 路径下新建java.opts文件.
MATLAB是根路径,例如D:\CMWang\MATLABR2014bMATLAB是根路径,例如D:\CMWang\MATLABR2014b
ARCH是系统架构.例如win64,则在D:\CMWang\MATLABR2014b\bin\win64下新建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
显示最大内存改变,设置成功.
备注: 可在matlab-file-preference-General-Java Heap Memory,可以设置Java Heap Memory大小,其最大可以设置的值是内存大小的1/4。如果想用的Java Heap Memory大于内存的1/4无法利用Preference进行设置。
采用上述在Matlab安装目录下添加java.opts的方法可以任意设置Java Heap Memory的大小当设置的大小小于内存的1/4时Preference中Java Heap Memory面板显示的是相应的值当大于内存的1/4时面板显示值是其最大值但实际上使用的却是我们在java.opts中设置的大小。设置Java Heap Memory面板的主要目的是防止一些人任意改变,破坏操作系统.
主要参考
http://cn.mathworks.com/matlabcentral/answers/92813-how-do-i-increase-the-heap-space-for-the-java-vm-in-matlab-6-0-r12-and-later-versions
http://cn.mathworks.com/matlabcentral/answers/99763-why-do-i-receive-a-java-exception-when-starting-matlab-6-5-r13-or-later
http://blog.sina.com.cn/s/blog_890c6aa30101b5fy.html