JEP 248: Make G1 the Default Garbage Collector

Ben Evans ben at
Mon Jun 1 17:06:29 UTC 2015

Hi Vitaly,

>> Instead, G1 is now being talked of as a replacement for the default
>> collector. If that's the case, then I think we need to acknowledge it,
>> and have a conversation about where G1 is actually supposed to be
>> used. Are we saying we want a "reasonably high throughput with reduced
>> STW, but not low pause time" collector? If we are, that's fine, but
>> that's not where we started.
> That's a fair point, and one I'd be interesting in hearing an answer to as
> well.  FWIW, the only GC I know of that's actually used in low latency
> systems is Azul's C4, so I'm not even sure Oracle is trying to target the
> same use cases.  So when we talk about "low latency" GCs, we should probably
> also be clear on what "low" actually means.

Well, when I started playing with them, "low latency" meant a
sub-10-ms transaction time with 100ms STW as acceptable, if not ideal.

These days, the same sort of system needs a sub 500us transaction
time, and ideally no GC pause at all. But that leads to Zing, or
non-JVM solutions, and I think takes us too far into a specialised use

Having said that, there is definitely a decent-sized class of systems
(not just in finance) that cannot really tolerate any more than about
10-15ms of STW. So, what usually happens is that they live with the
young collections, use CMS and tune out the CMFs as best they can (by
clustering, rolling restart, etc, etc). I don't see any possibility of
G1 becoming a viable solution for those systems any time soon.



More information about the hotspot-dev mailing list