matlab中java.lang.outofmemoryError解决办法
来源:互联网 发布:teradata数据库语法 编辑:程序博客网 时间:2024/06/11 18:59
Matlab中调用weka时,常常出现Out of Memory现象,表明Java虚拟机内存不够用了.可以增加最大内存设置.
1. 查找matlab根路径.在matlab命令行中敲入:matlabroot
显示根路径,如:C:\Program Files\MATLAB\R2010a
2.查看当前Java虚拟机欲用的最大堆内存,即机器的总内存减去系统已经使用的内存, 敲入:java.lang.Runtime.getRuntime.maxMemory
查看当前Java虚拟机的总内存,敲入:java.lang.Runtime.getRuntime.totalMemory
查看当前Java虚拟机中仍可利用的自由内存:java.lang.Runtime.getRuntime.freeMemory
三者的关系是:maxMemory>totalMemory>freeMemory
3.查看Java虚拟机版本.敲入:version -java
4.在 $MATLAB\bin\$ARCH 路径下新建java.opts文件.
$MATLAB是根路径,例如C:\MATLAB7
$ARCH是系统架构.例如win64,则在C:\Program Files\MATLAB\R2010a\bin\win64下新建java.opts文件.
5.用记事本打开java.opts文件,
对于版本是1.2到1.5的Java虚拟机,输入:
-Xmx268435456
对于版本是1.1.8的JVM,输入
maxHeapSize = 268435456
保存.
这里268435456是新设置的JVM的最大堆内存.可以改成其他值.
我的内存大小是10G,设置maxMemory为4G,即设置-Xmx4096m
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://www.mathworks.com/support/solutions/data/1-18I2C.html?solution=1-18I2C
http://www.mathworks.com/support/solutions/data/1-19Z14.html?solution=1-19Z14
1. 查找matlab根路径.在matlab命令行中敲入:matlabroot
显示根路径,如:C:\Program Files\MATLAB\R2010a
2.查看当前Java虚拟机欲用的最大堆内存,即机器的总内存减去系统已经使用的内存, 敲入:java.lang.Runtime.getRuntime.maxMemory
查看当前Java虚拟机的总内存,敲入:java.lang.Runtime.getRuntime.totalMemory
查看当前Java虚拟机中仍可利用的自由内存:java.lang.Runtime.getRuntime.freeMemory
三者的关系是:maxMemory>totalMemory>freeMemory
3.查看Java虚拟机版本.敲入:version -java
4.在 $MATLAB\bin\$ARCH 路径下新建java.opts文件.
$MATLAB是根路径,例如C:\MATLAB7
$ARCH是系统架构.例如win64,则在C:\Program Files\MATLAB\R2010a\bin\win64下新建java.opts文件.
5.用记事本打开java.opts文件,
对于版本是1.2到1.5的Java虚拟机,输入:
-Xmx268435456
对于版本是1.1.8的JVM,输入
maxHeapSize = 268435456
保存.
这里268435456是新设置的JVM的最大堆内存.可以改成其他值.
我的内存大小是10G,设置maxMemory为4G,即设置-Xmx4096m
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://www.mathworks.com/support/solutions/data/1-18I2C.html?solution=1-18I2C
http://www.mathworks.com/support/solutions/data/1-19Z14.html?solution=1-19Z14
1 0
- matlab中java.lang.outofmemoryError解决办法
- matlab java.lang.OutOfMemoryError
- weblogic 中java.lang.OutofMemoryError解决办法
- java.lang.OutOfMemoryError解决办法
- java.lang.OutOfMemoryError解决办法
- java.lang.OutOfMemoryError 的解决办法
- Struts2中java.lang.OutOfMemoryError: PermGen space的解决办法
- matlab java.lang.OutOfMemoryError: Java heap space
- matlab java.lang.OutOfMemoryError Java heap space
- 解决办法:matlab Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap
- java.lang.OutOfMemoryError: Java heap space解决办法
- java.lang.OutOfMemoryError: Java heap space 解决办法
- java.lang.OutOfMemoryError: Java heap space 解决办法
- java.lang.OutOfMemoryError: PermGen space 解决办法
- java.lang.OutOfMemoryError: PermGen space 解决办法
- java.lang.OutOfMemoryError 解决办法收集总结
- java.lang.OutOfMemoryError: PermGen space 解决办法
- java.lang.OutOfMemoryError: PermGen space 解决办法
- android学习路线图
- android 之项目的目录结构分析与资源引用
- Eclipse的常用功能
- android 之 常见事件响应的实现方式对比
- Action入门
- matlab中java.lang.outofmemoryError解决办法
- 数据挖掘--简介
- 并发容器1
- 流插入运算符和流提取运算符的重载
- 第二题 设计包含min 函数的栈。
- 用JS判断一个html元素是否存在的五种方法
- 并发容器2
- webService开发笔记(一)
- ZOJ 2588 Burning Bridges(无向图求割边)