Any pointers for tuning 1.5.0_22 for a webapp with a large tenured gen?
justin at techadvise.com
Mon Jul 12 08:29:37 PDT 2010
We've recently upgraded our Weblogic webapp to Weblogic 9.2.1 which also
involved upgrading from jdk 1.4.2 to 1.5.0_22. Java 6 isn't an option with
Weblogic 9.2, and the upgrade to Weblogic 10 isn't until next year, so Java
6 is not an option for me at this point in time.
I had the 1.4.2 tuned to the extreme:
JAVA_ARGS=-Xms2816m -Xmx2816m -XX:NewSize=384m -XX:MaxNewSize=384m
-XX:CompileThreshold=3000 -Djava.net.setSoTimeout=20000 \
-XX:LargePageSizeInBytes=4m -XX:+UseMPSS -Xss128k
-XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled
-Xnoclassgc -XX:ParallelGCThreads=4 -XX:MaxTenuringThreshold=8
-XX:SurvivorRatio=6 -XX:+UseCMSCompactAtFullCollection -Xloggc:gc.out
-verbose:gc -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -XX:MaxPermSize=92m
With our upgrade, the ergonomics of the application changed some, so I just
specified Xmx and Xms at 3GB, and let it run to see what happened.
Remarkably, things were actually pretty good - minor GC's are faster, and
major GC's only occur about once or twice an hour. However, those major
GC's are taking from 12-20seconds, which I can't let our website users
Before I go down the road of tuning things, does anyone have any tips for
me? I can afford at most 2 or 3 seconds of pause time at once, and would
prefer to keep it under 2 seconds if possible. I need the 2GB of tenured to
be able to cache all the objects that I need to ensure good site
The ergonomics look kinda cool, but I'm wondering if that large of tenured
generation + my low pause requirement is just too much to ask from the
throughput collector. Am I destined to go back to hand tweaking the CMS
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the hotspot-gc-use