JEP 291: Deprecate the Concurrent Mark Sweep (CMS) Garbage Collector

Jeremy Manson jeremymanson at google.com
Fri Jul 8 18:46:56 UTC 2016


Hey folks,

We are interested in an actively maintained CMS.  It's the primary
collector used in our services, and we believe we will incur a meaningful
performance cost across our fleet if we need to migrate to G1.

We'd be interested in participating in maintenance, but it will be an
uphill slog if we are the only ones.  Who else might be interested?  I
think there would be value in having that conversation, and I'd be happy to
organize a meeting (unfortunately, I have to miss the JVMLS this year, but
I'd be happy to do it out of band).

There could even be advantages for the community if it is no longer part of
Oracle's build, but it remains community supported.  Because it has been on
life support for the past few years, the upstream team has shied away from
making substantial changes.  This could provide it with a jolt of energy.

Any takers?

Jeremy


On Fri, Jul 1, 2016 at 2:08 PM, <mark.reinhold at oracle.com> wrote:

> 2016/7/1 1:50:41 -0700, aph at redhat.com:
> > On 30/06/16 22:35, mark.reinhold at oracle.com wrote:
> >> New JEP Candidate: http://openjdk.java.net/jeps/291
> >
> > I think that there is likely to be a fair amount of push-back against
> > this one.  I understand that the GC team has to be responsible for
> > this decision, given that they have to support it.  But there has to
> > be at least a possibility that OpenJDK support for CMS might not be
> > ended, and Oracle is not necessarily the only company involved in
> > this.
>
> I think that's well understood.
>
> There are limits to what can be expressed within the structure of a JEP
> so, for clarity's sake, here's my take on this.  Jon will correct me if
> I've got any of it wrong, I'm sure.
>
> Oracle's GC team is intensely focused on improving the G1 collector, so
> they're trying to reduce the amount of time they spend maintaining CMS.
> At the very least, therefore, they will deprecate CMS in Oracle's JDK 9
> product builds and then, most likely but depending upon end-user and
> customer feedback, remove it entirely from Oracle's JDK 10 builds.
>
> Whether and when this happens is a decision for Oracle to make, just as
> whether Red Hat ships an AArch64 build of JDK 9 is a decision for Red
> Hat to make.  I don't think this is controversial -- there's really no
> need for anyone to spin conspiracy theories about smoke-filled rooms in
> Redwood Shores (but go ahead and do that if it makes you feel better).
>
> The fate of the CMS GC code itself in any particular OpenJDK Release
> Project, or in any other OpenJDK Project for that matter, is a different
> question, about which JEP 291 was intended to prompt a wider discussion,
> as indeed it has.
>
> If a set of credible developers expresses a clear desire to maintain CMS
> after JDK 9 then all of us who work on this code base, regardless of
> employer, will find a way for that to happen.  Maybe the CMS code stays
> in JDK 9 and later Release Projects but is #ifdef'd out, or maybe it
> stays but the common GC interface is refactored so that other collectors
> (not just G1) can evolve more independently, or maybe the CMS code is
> removed from the mainline Release Projects but kept alive in a new side
> Project.  Exactly what happens depends mostly, I think, on who shows up.
>
> To put it another way, the question that JEP 291 is trying to ask is,
> "Does anybody outside of Oracle wish to take on the maintenance of CMS
> after JDK 9?  If so, then let's talk."
>
> Any takers?
>
> - Mark
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/hotspot-gc-dev/attachments/20160708/125e834f/attachment.htm>


More information about the hotspot-gc-dev mailing list