In our testing we’ve found mixed results with G1 and Geode for many applications.
- G1 does require significant tuning to achieve desired pause times on many workloads. This is somewhat disappointing as in practice it requires a similar degree of effort/complexity as CMS. - G1 tends to be at odds with the Geode Resource Manager when using heap-based eviction (this is a very common safety mechanism). There may be some hope if '-XX:SoftMaxHeapSize’ is ever merged to relevant versions like jdk8. I suspect the best choice is to skip G1 and go directly to Z / Shenandoah which are more targeted at low latency high memory workloads. I would LOVE to see an RFC proposing this effort :-) Anthony > On Mar 31, 2021, at 6:58 AM, Jacob Barrett <jabarr...@vmware.com> wrote: > > There has been lots of talk over the years but no action I am aware of. I > would suggest we start with Z since it is more widely available. In > benchmarking it has shown impressive out of the box improvements over heavily > tuned CMS. Shenandoah is very similar in behavior and structure so picking it > up after should be easy. > >> On Mar 31, 2021, at 5:58 AM, Alberto Gomez <alberto.go...@est.tech> wrote: >> >> >> Hi, >> >> The Geode documentation on the Resource Manager ([1]) provides information >> about its integration with CMS and G1 although it seems to suggest that only >> CMS is well supported with it, or at least, it is the preferred alternative. >> >> Given that CMS has been deprecated in JDK 9 (and will not be available in >> JDK 14) and that there are newer and more efficient GCs like Shenandoah and >> ZGC available (Shenandoah is supported in OpenJDK 11.0.9), I would like to >> know if there is any work or discussions ongoing in the community about the >> integration of ZGC and/or Shenandoah with Geode's Resource Manager. >> >> Thanks in advance, >> >> Alberto G. >> >> [1]: >> https://geode.apache.org/docs/guide/113/managing/heap_use/heap_management.html