Topic
No replies
danielt
danielt
1 Post
ACCEPTED ANSWER

Pinned topic Problems with 4GB Heap

‏2011-02-18T16:50:58Z |
Hi, we are running into some problems with a 4GB JVM. We are running a transactional web application in Tomcat 5 on AIX. For several months we've had Tomcat become unresponsive to the point that it requires a restart. We are using the Garbage Collection and Memory Visualizer tool to help us with our troubleshooting. The line plot seems to show that the free heap before collection is regularly at 0GB. I'm wondering if we need to switch from the optthruput policy to the optavgpause policy. And maybe we should increase the heap size by another 1GB.

This is the list of our Java options:

Xjcl:jclscar_24
Dcom.ibm.oti.vm.bootstrap.library.path=/usr/java6_64/jre/lib/ppc64/default:/usr/java6_64/jre/lib/ppc64
Dsun.boot.library.path=/usr/java6_64/jre/lib/ppc64/default:/usr/java6_64/jre/lib/ppc64
Djava.library.path=/usr/java6_64/jre/lib/ppc64/default:/usr/java6_64/jre/lib/ppc64:/usr/java6_64/jre/lib/ppc64:/usr/java6_64/jre/lib/ppc64/default:/usr/lib:/usr/java6_64/jre/lib/ppc64/j9vm:/usr/java6_64/jre/lib/ppc64:/usr/java6_64/jre/../lib/ppc64:/usr/lib
Djava.home=/usr/java6_64/jre
Djava.ext.dirs=/usr/java6_64/jre/lib/ext
Duser.dir=/_j2se_j9=1119744
Djava.runtime.version=pap6460sr5-20090529_04 (SR5)
Xdump
Djava.class.path=.
Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
Djava.util.logging.config.file=/opt/freeware/apache-tomcat/conf/logging.properties
Xms4g
Xmx4g
Xhealthcenter:port=8485
Xverbosegclog:/opt/freeware/apache-tomcat/logs/verbose-GC-#.log,100,10000
Xdisableexplicitgc
Djava.endorsed.dirs=/opt/freeware/apache-tomcat/common/endorsed
Djava.class.path=:/opt/freeware/apache-tomcat/bin/bootstrap.jar:/opt/freeware/apache-tomcat/bin/commons-logging-api.jar
Dcatalina.base=/opt/freeware/apache-tomcat
Dcatalina.home=/opt/freeware/apache-tomcat
Djava.io.tmpdir=/opt/freeware/apache-tomcat/temp
Dsun.java.command=org.apache.catalina.startup.Bootstrap start
Dsun.java.launcher=SUN_STANDARD
port_library
org.apache.harmony.vmi.portlib
Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
Djava.util.logging.config.file=/opt/freeware/apache-tomcat/conf/logging.properties
Xhealthcenter:port=8485
Xverbosegclog:/opt/freeware/apache-tomcat/logs/verbose-GC-#.log,100,10000
Xdisableexplicitgc

These are the results from the Summary section of the Garbage Collection and Memory Visualizer:

Allocation failure count: 2096
Forced collection count: 0
GC Mode: optthruput
Largest memory request (bytes): 16777240
Mean garbage collection pause (ms): 1803
Mean heap unusable due to fragmentation (MB): 190
Mean interval between collections (minutes): 0.41
Number of collections: 2096
Proportion of time spent in garbage collection pauses (%): 7.38
Proportion of time spent unpaused (%): 92.62
Rate of garbage collection (MB/minutes): 2764

Does anyone have any suggestions or experience with a similar issue?

Thanks.