G1 now the default in JDK 9

Ben Evans benjamin.john.evans at gmail.com
Thu Jul 2 10:19:02 UTC 2015


Not to be a downer, but it's far from clear that this is good news, or
anything other than incredibly reckless on Oracle's part.

Most experts in the field are of the opinion that G1 only became
production quality about a year ago. That is nowhere near enough time
for it to be made default.

I am personally very concerned that after telling us for years that G1
was the CMS replacement (and G1 is *still* not beating CMS on a large
majority of low-pause workloads), Oracle have done an about-face and
suddenly decided that G1 is really a general purpose collector and a
replacement for Parallel.

They have refused to release any numbers, and most of the community
effort has been about comparing G1 with CMS. G1 vs Parallel is a very
much an undiscovered country. My research indicates that between
50-70% of all Java apps will be affected by this change, and virtually
no research has been done on the impact of the change. That is
extremely scary.

Oracle's compromise (that they'll enable G1 as default in JDK 9 betas
for now, but will revisit the issue prior to GA) is welcome, but this
has to be a real commitment from them and not just a sop to keep us

There is a huge amount of work to be done before we should feel
comfortable about this major, potentially massively detrimental

To the benchmarking point, specjbb is worthless from a GC point of
view, and is specifically designed to be gameable by vendors.

Real applications comparing Parallel v G1 are what is needed, and they
are thin on the ground.



On Thu, Jul 2, 2015 at 7:20 AM, Richard Kolb <rjdkolb at gmail.com> wrote:
> Hi Mani,
> That's great news. It's a long time in coming.
> It would be nice to see an updated benchmark on collectors in Java,
> especially with all the improvements to G1 in Java 8 update 40 and Java 9.
> Here is an old one
> <http://blog.mgm-tp.com/2013/12/benchmarking-g1-and-other-java-7-garbage-collectors/>
> .
> regards,
> Richard.
> On 2 July 2015 at 04:45, Mani Sarkar <sadhak001 at gmail.com> wrote:
>> FYI - to all those who case about G1GC.
>> Cheers,
>> Mani
>> ---------- Forwarded message ----------
>> From: Stefan Johansson <stefan.johansson at oracle.com>
>> Date: Wed, Jul 1, 2015 at 9:14 AM
>> Subject: G1 now the default in JDK 9
>> To: "jdk9-dev at openjdk.java.net" <jdk9-dev at openjdk.java.net>
>> Hi all,
>> A short heads up. The change to make G1 the default garbage collector has
>> now made its way to jdk9/dev [1] and should soon be part of a JDK 9 early
>> access build.
>> Thanks,
>> Stefan
>> [1] http://hg.openjdk.java.net/jdk9/dev/hotspot/rev/d472d1331479
>> --
>> @theNeomatrix369 <http://twitter.com/theNeomatrix369>*  |  **Blog
>> <http://neomatrix369.wordpress.com>**  |  *LJC Associate & LJC Advocate
>> (@adoptopenjdk & @adoptajsr programs)
>> *Meet-a-Project - *MutabilityDetector
>> <https://github.com/MutabilityDetector>*  |  **Bitbucket
>> <https://bitbucket.org/neomatrix369>* * |  **Github
>> <https://github.com/neomatrix369>* * |  **LinkedIn
>> <http://uk.linkedin.com/pub/mani-sarkar/71/a77/39b>*
>> *Come to Devoxx UK 2016:* http://www.devoxx.co.uk/
>> *Don't chase success, rather aim for "Excellence", and success will come
>> chasing after you!*

More information about the adoption-discuss mailing list