CMS Garbage collection eating up processor power

T.K thankhar at
Thu Mar 27 17:14:28 UTC 2008

Hi All,
We got 5 Sun Web Servers running on Java 1.4.2, and used to use the default
GC for Tenured space. The problem with that is that it takes 60-80 seconds
everytime the GC happens, and the latency on the site goes crazy. So we
decided to change it to use the Concurrent Mark Sweep Collector on one
server to test it out. Here's the setting:

-XX:+UseConcMarkSweepGC -XX:+UseParNewGC -Xms3G -Xmx3G -XX:NewSize=384M
-XX:MaxNewSize=384M -XX:PermSize=64M -XX:MaxPermSize=64M

With that setting, the server runs great. But eventually, when the server
reach a medium load (around 100-200 users), the tenured space is always
around half full, and the CMS collector starts to run continuously one after
another. It doesn't hurt the application for now, but it's taking 25% of
processing time (we got 4 cpu, so one web server always keep 1 cpu power). I
don't see that much cpu utilization on other web server that don't have CMS,
and they have more users than the one with CMS. If we got CMS on all 5 web
servers, I'm wondering if that will crash the server or not.  What should I
do to decrease the processor utilization caused by GC?

Also, I'm thinking to use i-CMS on the JVM, and maybe that might slow down
the CMS and reduce the amount of CPU utilization by CMS. Any thought?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>
-------------- next part --------------
hotspot-gc-use mailing list
hotspot-gc-use at

More information about the hotspot-gc-dev mailing list