今天在linux中打开Weka时,打开基因数据文件的时候出现如
Not enough memory . Please load a smaller dataset or use a larger heap size.
所示的错误,说内存不足,需要设定一个更大的内存空间,只要执行以下命令
sudo java -Xmx1024m -jar /usr/lib/R/library/RWekajars/java/weka.jar
后,问题就解决了。不过这个命令分配的虚拟内存只是临时的,以后在weka中每次打开大的数据文件时都必须通过执行这个命令才能打开了,否则还是会提示内存不足。
以上命令中 -jar后面的是-classpath的路径,要根据自己机器上的路径来设定。
具体还可以参开weka官网上的FAQ http://weka.wikispaces.com/Java+Virtual+Machine
另外,大量数据在weka中使用时间复杂度较大的算法时,会出现软件卡住的情况。此时,在终端输入top命令,查看进程的PID,然后Ctrl+C退出,再用命令kill -9 PID号,就可以杀死相应的进程,关闭卡住的程序。不过要注意,如果要杀死的是root进程,则需要用sudo kill -9 PID号 命令。或者知道weka是java程序,直接用sudo killall -9 java即可。