A few questions about G1
aaisinzon at guidewire.com
Thu Mar 3 08:55:59 PST 2011
I noted that, in Sun JVM 1.6 update 24, G1 no longer needs the
-XX:+UnlockExperimentalVMOptions option, or at least when testing with
the -version flag.
I guess G1 is more mature and will give it a try as part of some tests
with the 1.6 JVM.
I had some questions about G1:
* Region size: our product does not generate large objects.
Nevertheless, some of our customers will configure it in a way that
results in the allocation of large objects. The typical example is that
our product will be integrated with a document management system and
that some very large documents (10s of MB or even 100s of MB) will go
through the JVM that supports our product. I wonder what happens if the
region size is smaller than these large objects and wonder if one can
size up the region size pre-emptively to avoid possible negative
effects. It may also make sense to instrument the JVM to output in the
GC log the size of the object that caused a region to become full, as it
would allow to identify such issues.
* Pause time: with Sun JVM 1.5, I had experimented with
ParallelGC, ParallelOldGC and CMS. The two first show long full
collections. CMS was mostly better but resulted in some rare even longer
collections, which I attributed to fragmentation, which was in line with
our applications memory behavior. I wonder what customer/benchmark
experience is so far with G1 and whether I can hope to avoid these long
pauses with G1.
* Possible tunings to minimize pause times: what would be the
best tunings to explore with G1, considering that objective of
containing pause times. From reading
tml, it seems that MaxGCPauseMillis would be a good tuning. Are they
other tunings I should consider to test G1 more specifically on the
pause time dimension?
Thanks in advance
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the hotspot-gc-use