问题
Could you please explain me how to increase this PermSpace size. I am using Gate application and loading huge amount of data and large number of plugins and unfortunately after every run it gives the error about the out of memory maxPermSpace.
I searched everywhere, but I could not find how to increase this size through command line or may be the file where I could update the data?
I really need some help in order to complete my project. Please explain how to do this by command line I am using jdk1.6.0_38 version and win7(64bit).
回答1:
You have to use -XX:MaxPermSize
. A sample command could be:
java -Xms128m -Xmx512m -XX:MaxPermSize=512m ...
回答2:
-XX:MaxPermSize=256m
Maybe combined with 32 bit addresses for objects, instead of 64 bits
-XX:+UseCompressedOops
Enables the use of compressed pointers (object references represented as 32 bit offsets instead of 64-bit pointers) for optimized 64-bit performance with Java heap sizes less than 32gb.
See VM Options.
Also check that String internalization does not occur. XML introduced in the past a String.intern()
to save space, but then Perm space grows. So maybe check your XML settings.
回答3:
From Gate's documentation
2.7.5 I got the error: Could not reserve enough space for object heap [#]
GATE doesn’t use the JAVA_OPTS variable. The default memory allocations are defined in the gate/build.xml file but you can override them by creating a file called build.properties in the same directory containing
runtime.start.memory=256m
runtime.max.memory=1048m
Check your gate/build.xml file and include the options cited in the other answers
来源:https://stackoverflow.com/questions/16587727/to-increase-maxpermsize-memory-in-java-by-command-line