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

Erik Helin erik.helin at oracle.com
Wed Nov 16 16:03:38 UTC 2016


On 11/11/2016 08:04 AM, kirk at kodewerk.com wrote:
>> Thanks Eric,
>
>
> These RFCs looks very good. The RFC on throughput barriers would be the
> highest priority item. My discussions with low latency people suggest
> that this will be a huge barrier to them migrating to 9. I would suggest
> that a parallel full is the least important on the list as I would hope
> we can find strategies to tune them out of systems so that one would
> only see them in (pseudo-) failure conditions that are often a result of
> “work queues” backing up and thus are outside the realm of GC tuning.
>
> I look forward to testing them.

Thanks for your feedback, and I again want to emphasize that we are 
actively looking for contributions in these areas.

Thanks,
Erik

> Kind regards,
> Kirk
>
>>
>> On Wed, Nov 9, 2016 at 7:26 AM, Erik Helin <erik.helin at oracle.com
>> <mailto:erik.helin at oracle.com>> wrote:
>>
>>     Hi Jeremy,
>>
>>     Thanks for taking notes. I have created separate email threads on
>>     hotspot-gc-dev at openjdk.java.net
>>     <mailto:hotspot-gc-dev at openjdk.java.net> for three enhancements to
>>     G1 that we think will make G1 be more like CMS for the use cases
>>     discussed during the meeting. The ideas are described in:
>>     - "RFC: Throughput barriers for G1"
>>
>>     http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2016-November/019215.html
>>     <http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2016-November/019215.html>
>>     - "RFC: Parallel full collection for G1"
>>
>>     http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2016-November/019216.html
>>     <http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2016-November/019216.html>
>>     - "RFC: Rebuilding remembered sets during concurrent mark"
>>
>>     http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2016-November/019217.html
>>     <http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2016-November/019217.html>
>>
>>     Please respond to these ideas in the respective email thread. We
>>     would be happy to help out with the design and integration if you
>>     and/or any external contributor would like too look into any (or
>>     all) of these ideas.
>>
>>     Thanks,
>>     Erik
>>
>>     On 10/21/2016 08:37 PM, Jeremy Manson wrote:
>>
>>         Hi folks,
>>
>>         We had the face to face at JavaOne on 9/20.  I took notes,
>>         which are
>>         linked from the bug:
>>
>>         https://bugs.openjdk.java.net/browse/JDK-8142518
>>         <https://bugs.openjdk.java.net/browse/JDK-8142518>
>>         <https://bugs.openjdk.java.net/browse/JDK-8142518
>>         <https://bugs.openjdk.java.net/browse/JDK-8142518>>
>>
>>         (Sorry about the delay - anything that happens at a quarterly
>>         boundary
>>         takes me twice as long because of the Google planning cycle).
>>
>>         The current plan for followup includes Erik Helin figuring out
>>         what
>>         extracting CMS code from Hotspot will actually look like, and
>>         Paul Su
>>         providing a list of ideas for helping G1 close the performance
>>         gap.  See
>>         meeting notes for more followup actions.
>>
>>         We didn't specify a timeline for the next meeting.  Paul
>>         (cc'd) said he
>>         had to go do some due diligence about getting the list of
>>         ideas.  It
>>         would be great if he and / or Erik could talk about when a
>>         good time for
>>         the next sync would be.
>>
>>         Jeremy
>>
>>         On Sat, Aug 27, 2016 at 5:42 PM, Jeremy Manson
>>         <jeremymanson at google.com <mailto:jeremymanson at google.com>
>>         <mailto:jeremymanson at google.com
>>         <mailto:jeremymanson at google.com>>> wrote:
>>
>>             Thanks, Jon.
>>
>>             If we are going to do it, I'd (selfishly) like to see it done
>>             earlier in the JDK 10 time frame, so that we can start
>>         contributing
>>             our patches for it for JDK 10 earlier, rather than later.
>>         But JDK
>>             10 time frame is fine.
>>
>>             Assuming you are asking me about management issues: I just
>>             (Thursday) got back from the vacation I mentioned, so I've
>>         only just
>>             spoken about it with our management.  Naturally, no immediate
>>             answer, but there's a lot of interest, and we plan to have
>>         more
>>             conversations in the near term.
>>
>>             For a variety of reasons (most of which I've already
>>         articulated), I
>>             strongly believe we will have to do *something*, and it
>>         will mostly
>>             be a question of whether this is the right path.  Since we
>>         have
>>             ~three years before the issue becomes immediate, that
>>         gives us a bit
>>             of breathing room to do the right thing.  Other possibilities
>>             include spending the time until JDK 10 making G1 do what
>>         we need, or
>>             figuring out another GC entirely (we'd want to evaluate, e.g.,
>>             Shenandoah).
>>
>>             (Since the G1 possibility is clearly of interest to you
>>         folks: We
>>             would have to decide a) that it is technically feasible,
>>         and b) that
>>             you folks were likely to take the patches.  In addition to
>>         finding a
>>             path forward to lowering the cost of the write barrier
>>         dramatically
>>             and dealing with the memory footprint issues (not sure this is
>>             possible), we would also have to reimplement, e.g., our
>>         parallel
>>             Full GC patch, as well as a number of other changes we've
>>         made to
>>             CMS locally.)
>>
>>             I'd like what we end up doing to be something palatable to the
>>             community, since CMS is obviously filling a very important
>>         role in
>>             the ecosystem that won't get filled if it gets abandoned.
>>
>>             Jeremy
>>
>>             On Tue, Aug 23, 2016 at 9:23 PM, Jon Masamitsu
>>             <jon.masamitsu at oracle.com
>>         <mailto:jon.masamitsu at oracle.com>
>>         <mailto:jon.masamitsu at oracle.com
>>         <mailto:jon.masamitsu at oracle.com>>> wrote:
>>
>>                 All,
>>
>>                 I've been working on the examples and we're been
>>         discussing
>>                 (arguing)
>>                 about them here.  They are failing into at least the
>>         following
>>                 classes
>>
>>                 - Use inheritance to specialize for CMS (specialize
>>         card table is
>>                 envisioned as an example).
>>                 - Use a GC Interface to request something different
>>         for CMS
>>                 (different write
>>                 barriers for example).
>>                 - Compile code under macros
>>                     Similar to INCLUDE_ALL_GCS
>>                     Leaves calls to specialized CMS code visible in
>>         the shared code
>>                     Involves some code refactoring
>>                 - Move more code to the cms directory (ParNew for example)
>>                 - Custom solutions which might use one or more of the
>>         above
>>                 techniques.
>>                 - Argument processing I don't know about yet.
>>
>>                 We're still arguing about the example so they're not here.
>>
>>                 As I've said Oracle would not drop support of CMS
>>         until at least
>>                 jdk 10 so working on separating out the code would be work
>>                 for the jdk 10 time frame.   Do people have reasons to
>>         get that
>>                 done earlier rather than later?
>>
>>                 Also is your management's support for spending
>>         engineering time
>>                 on this effort a slam-dunk?   Or a qualified maybe?
>>          I'm trying to
>>                 get a feel for how real this CMS project is.
>>
>>                 Jon
>>
>>
>>
>>                 On 8/1/2016 1:49 PM, Jeremy Manson wrote:
>>
>>                     For those following along at home, the meeting
>>             happened last
>>                     week.  We took notes, which are linked from the bug:
>>
>>                     https://bugs.openjdk.java.net/browse/JDK-8142518
>>             <https://bugs.openjdk.java.net/browse/JDK-8142518>
>>                     <https://bugs.openjdk.java.net/browse/JDK-8142518
>>             <https://bugs.openjdk.java.net/browse/JDK-8142518>>
>>
>>                     The current plan for followup is to set up a
>>             meeting for the
>>                     end of August, and then a f2f during JavaOne.
>>
>>                     Jeremy
>>
>>                     On Thu, Jul 21, 2016 at 9:46 AM, Jeremy Manson
>>                     <jeremymanson at google.com
>>             <mailto:jeremymanson at google.com>
>>             <mailto:jeremymanson at google.com
>>             <mailto:jeremymanson at google.com>>> wrote:
>>
>>                         I was drafting an agenda.  My expectation is
>>             that the
>>                         meeting will go something like this:
>>
>>                         Introductions
>>
>>                         Discussion of motivations for JEP 291 (Jon M)
>>
>>                         Discussions of concerns about JEP 291 (roundtable)
>>
>>                         Discussion / Brainstorming about potential
>>             ways forward,
>>                         as well as an understanding of what level of
>>             commitment
>>                         organizations are willing to make.
>>
>>                         Discussion of action items and followup.
>>
>>                         Jeremy
>>
>>
>>                         On Thu, Jul 21, 2016 at 7:39 AM, Martijn Verburg
>>                         <martijnverburg at gmail.com
>>             <mailto:martijnverburg at gmail.com>
>>                         <mailto:martijnverburg at gmail.com
>>             <mailto:martijnverburg at gmail.com>>> wrote:
>>
>>                             Hi Jon,
>>
>>                             For me it's to see if there are enough
>>             folks who are
>>                             willing *and* capable (to be blunt, it
>>             will need the
>>                             backing of large companies) of maintaining
>>             CMS as a
>>                             collector going forwards (it's important
>>             to several of
>>                             our customers).  If that's a yes then I'd
>>             hope to have
>>                             a technical discussion around the options
>>             of how we
>>                             could achieve that without causing a major
>>             headache
>>                             for the Oracle GC engineers.
>>
>>
>>                             Cheers,
>>                             Martijn
>>
>>                             On 20 July 2016 at 23:50, Jon Masamitsu
>>                             <jon.masamitsu at oracle.com
>>             <mailto:jon.masamitsu at oracle.com>
>>                             <mailto:jon.masamitsu at oracle.com
>>             <mailto:jon.masamitsu at oracle.com>>> wrote:
>>
>>                                 What are peoples expectations for this
>>             meeting?
>>
>>                                 Jon
>>
>>                                 On 07/18/2016 10:16 AM, Jeremy Manson
>>             wrote:
>>
>>                                     Presumably, everyone will be happy
>>                 with meeting
>>                                     notes rather than an actual recording.
>>
>>                                     Otherwise, I'll add:
>>
>>                                     ysr1729 at gmail.com
>>                 <mailto:ysr1729 at gmail.com> <mailto:ysr1729 at gmail.com
>>                 <mailto:ysr1729 at gmail.com>>
>>                                     mark.reinhold at oracle.com
>>                 <mailto:mark.reinhold at oracle.com>
>>                                     <mailto:mark.reinhold at oracle.com
>>                 <mailto:mark.reinhold at oracle.com>>
>>
>>
>>
>>                                     On Mon, Jul 18, 2016 at 8:13 AM,
>>                                     kirk.pepperdine at gmail.com
>>                 <mailto:kirk.pepperdine at gmail.com>
>>                                     <mailto:kirk.pepperdine at gmail.com
>>                 <mailto:kirk.pepperdine at gmail.com>>
>>                                     <kirk.pepperdine at gmail.com
>>                 <mailto:kirk.pepperdine at gmail.com>
>>                                     <mailto:kirk.pepperdine at gmail.com
>>                 <mailto:kirk.pepperdine at gmail.com>>> wrote:
>>
>>                                         ok we can record if everyone
>>                 is open to that.
>>
>>                                             On Jul 18, 2016, at 7:48
>>                     AM, Jeremy Manson
>>                                             <jeremymanson at google.com
>>                     <mailto:jeremymanson at google.com>
>>
>>                     <mailto:jeremymanson at google.com
>>                     <mailto:jeremymanson at google.com>>> wrote:
>>
>>                                             Richard - I'll bring
>>                     someone who can take
>>                                             readable notes. :)
>>
>>                                             Jeremy
>>
>>                                             On Sat, Jul 16, 2016 at
>>                     5:07 AM,
>>                                             kirk.pepperdine at gmail.com
>>                     <mailto:kirk.pepperdine at gmail.com>
>>
>>                     <mailto:kirk.pepperdine at gmail.com
>>                     <mailto:kirk.pepperdine at gmail.com>>
>>                                             <kirk.pepperdine at gmail.com
>>                     <mailto:kirk.pepperdine at gmail.com>
>>
>>                     <mailto:kirk.pepperdine at gmail.com
>>                     <mailto:kirk.pepperdine at gmail.com>>> wrote:
>>
>>                                                 Hi Richard,
>>
>>                                                 I think it’s in
>>                     everyone’s interest to
>>                                                 keep this out in the open.
>>
>>                                                 Kind regards,
>>                                                 Kirk
>>
>>                                                     On Jul 16, 2016,
>>                         at 1:34 AM, Richard
>>                                                     Warburton
>>                         <richard.warburton at gmail.com
>>                         <mailto:richard.warburton at gmail.com>
>>
>>                         <mailto:richard.warburton at gmail.com
>>                         <mailto:richard.warburton at gmail.com>>>
>>                                                     wrote:
>>
>>                                                     Hi,
>>
>>                                                         Sounds as if
>>                         the consensus is a
>>                                                         telephone /
>>                         video conference in the
>>                                                         near term, and
>>                         then a F2F during /
>>                                                         close to JavaOne.
>>
>>                                                         People who
>>                         want to be invited include:
>>
>>
>>                         kirk at kodewerk.com <mailto:kirk at kodewerk.com>
>>
>>                         <mailto:kirk at kodewerk.com
>>                         <mailto:kirk at kodewerk.com>>
>>                                                         aph at redhat.com
>>                         <mailto:aph at redhat.com> <mailto:aph at redhat.com
>>                         <mailto:aph at redhat.com>>
>>
>>                         volker.simonis at gmail.com
>>                         <mailto:volker.simonis at gmail.com>
>>
>>                         <mailto:volker.simonis at gmail.com
>>                         <mailto:volker.simonis at gmail.com>>
>>
>>                         jon.masamitsu at oracle.com
>>                         <mailto:jon.masamitsu at oracle.com>
>>
>>                         <mailto:jon.masamitsu at oracle.com
>>                         <mailto:jon.masamitsu at oracle.com>>
>>
>>                         jeremymanson at google.com
>>                         <mailto:jeremymanson at google.com>
>>
>>                         <mailto:jeremymanson at google.com
>>                         <mailto:jeremymanson at google.com>>
>>
>>                         martijnverburg at gmail.com
>>                         <mailto:martijnverburg at gmail.com>
>>
>>                         <mailto:martijnverburg at gmail.com
>>                         <mailto:martijnverburg at gmail.com>>
>>
>>                         jwha at google.com <mailto:jwha at google.com>
>>
>>                         <mailto:jwha at google.com <mailto:jwha at google.com>>
>>
>>                                                         Did I miss
>>                         anyone?  We can take
>>                                                         date / time
>>                         planning and logistics
>>                                                         off-list.
>>
>>
>>                                                     Given that this
>>                         change affects a lot of
>>                                                     organisations and
>>                         people in the wider
>>                                                     Java community I
>>                         think it would be
>>                                                     really appreciated
>>                         that a brief summary
>>                                                     of the discussion
>>                         be published
>>                                                     somewhere in
>>                         public. Maybe this mailing
>>                                                     list?
>>
>>                                                     regards,
>>
>>                                                       Richard Warburton
>>
>>
>>                         http://insightfullogic.com
>>                         <http://insightfullogic.com/>
>>                                                       @RichardWarburto
>>
>>                         <http://twitter.com/richardwarburto
>>                         <http://twitter.com/richardwarburto>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>



More information about the hotspot-gc-dev mailing list