Java6u7 : 2 very long Parallel GC (24&30min) without any specific reason

Jon Masamitsu Jon.Masamitsu at Sun.COM
Mon Oct 13 15:46:16 UTC 2008


Are you setting the maximum heap size on your command line?
If not, you may be getting a larger maximum by default.  That
value has been changed on 64 bit platforms.  It used to be 1g
(which was ok for 32 bit platforms but makes less
sense for 64 bit platforms).   Try -Xmx1g which will give you
the old behavior.

On 10/13/08 06:37, David Tavoularis wrote:
> Hi,
> We had 2 very long duration of the Full GC (Parallel GC) running with Java 6u7 (64-bit Solaris), where GC took 24min and then 30min.
> Usually, Full GC would hardly take more than 2 minutes.
> We also noticed that the "real" measurement usually comes close to the sum of the "user" and "sys" measurement, but here it outpasses the figures, see :
> user=47.85 sys=9.84, real=1450.70 secs

This says that the VM is doing lots of waiting.  Do you have
more than 1 VM running on this machine?  Or other applications
that are using lots of physical memory?  The much larger
real time often indicates swapping.

> Any idea what to check from here ?
> As a workaround, I would like to implement the property "-XX:MaxGCPauseMillis=60000" (10min max for a Full GC). Do you think it is a good idea ?

Using this setting should limit the growth  of the heap
so that you stay below the 10min pause.   You should be
able to see the size of the heap in the GC logs
(young gen + old (tenured) gen).

> Thanks in advance
hotspot-gc-use mailing list
hotspot-gc-use at

More information about the hotspot-gc-dev mailing list