[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-hotspot-gc-dev
Subject:    Re: JEP 291: Deprecate the Concurrent Mark Sweep (CMS) Garbage Collector
From:       Jeremy Manson <jeremymanson () google ! com>
Date:       2016-08-28 0:42:12
Message-ID: CAPYFHW1OX-3JJXVFfMAboBpCg2VR-j_8xRspHp+PVMZg83SokQ () mail ! gmail ! com
[Download RAW message or body]

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@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
>
> 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@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@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@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@gmail.com
>>>> mark.reinhold@oracle.com
>>>>
>>>>
>>>>
>>>> On Mon, Jul 18, 2016 at 8:13 AM, kirk.pepperdine@gmail.com <
>>>> kirk.pepperdine@gmail.com> wrote:
>>>>
>>>>> ok we can record if everyone is open to that.
>>>>>
>>>>> On Jul 18, 2016, at 7:48 AM, Jeremy Manson <jeremymanson@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@gmail.com <
>>>>> kirk.pepperdine@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@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@kodewerk.com
>>>>>>> aph@redhat.com
>>>>>>> volker.simonis@gmail.com
>>>>>>> jon.masamitsu@oracle.com
>>>>>>> jeremymanson@google.com
>>>>>>> martijnverburg@gmail.com
>>>>>>> jwha@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
>>>>>>   @RichardWarburto <http://twitter.com/richardwarburto>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>
>
>

[Attachment #3 (text/html)]

<div dir="ltr">Thanks, Jon.<div><br></div><div>If we are going to do it, I&#39;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.</div><div><br></div><div>Assuming you are asking me about \
management issues:  I just (Thursday) got back from the vacation I mentioned, so \
I&#39;ve only just spoken about it with our management.   Naturally, no immediate \
answer, but there&#39;s a lot of interest, and we plan to have more conversations in \
the near term.   </div><div><br></div><div>For a variety of reasons (most of which \
I&#39;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&#39;d want to \
evaluate, e.g., Shenandoah).   </div><div><br></div><div>(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&#39;ve made to CMS locally.)</div><div><br></div><div>I&#39;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&#39;t get filled if it gets \
abandoned.<br></div><div><br></div><div>Jeremy</div></div><div \
class="gmail_extra"><br><div class="gmail_quote">On Tue, Aug 23, 2016 at 9:23 PM, Jon \
Masamitsu <span dir="ltr">&lt;<a href="mailto:jon.masamitsu@oracle.com" \
target="_blank">jon.masamitsu@oracle.com</a>&gt;</span> wrote:<br><blockquote \
class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc \
solid;padding-left:1ex">  
    
  
  <div bgcolor="#FFFFFF" text="#000000">
    All,<br>
    <br>
    I&#39;ve been working on the examples and we&#39;re been discussing
    (arguing)<br>
    about them here.   They are failing into at least the following<br>
    classes<br>
    <br>
    - Use inheritance to specialize for CMS (specialize card table is<br>
    envisioned as an example).<br>
    - Use a GC Interface to request something different for CMS  
    (different write<br>
    barriers for example).<br>
    - Compile code under macros<br>
           Similar to INCLUDE_ALL_GCS<br>
           Leaves calls to specialized CMS code visible in the shared code<br>
           Involves some code refactoring<br>
    - Move more code to the cms directory (ParNew for example)<br>
    - Custom solutions which might use one or more of the above
    techniques.<br>
    - Argument processing I don&#39;t know about yet.<br>
    <br>
    We&#39;re still arguing about the example so they&#39;re not here.<br>
    <br>
    As I&#39;ve said Oracle would not drop support of CMS until at least<br>
    jdk 10 so working on separating out the code would be work<br>
    for the jdk 10 time frame.     Do people have reasons to get that<br>
    done earlier rather than later?<br>
    <br>
    Also is your management&#39;s support for spending engineering time<br>
    on this effort a slam-dunk?     Or a qualified maybe?     I&#39;m trying to<br>
    get a feel for how real this CMS project is.<span class="HOEnZb"><font \
color="#888888"><br>  <br>
    Jon</font></span><div><div class="h5"><br>
    <br>
    <br>
    <div class="m_-8151589285105317466moz-cite-prefix">On 8/1/2016 1:49 PM, Jeremy \
Manson  wrote:<br>
    </div>
    <blockquote type="cite">
      <div dir="ltr">For those following along at home, the meeting
        happened last week.   We took notes, which are linked from the
        bug:
        <div><br>
        </div>
        <div><a href="https://bugs.openjdk.java.net/browse/JDK-8142518" \
target="_blank">https://bugs.openjdk.java.net/<wbr>browse/JDK-8142518</a><br>  </div>
        <div><br>
        </div>
        <div>The current plan for followup is to set up a meeting for
          the end of August, and then a f2f during JavaOne.</div>
        <div><br>
        </div>
        <div>Jeremy</div>
      </div>
      <div class="gmail_extra"><br>
        <div class="gmail_quote">On Thu, Jul 21, 2016 at 9:46 AM, Jeremy
          Manson <span dir="ltr">&lt;<a href="mailto:jeremymanson@google.com" \
target="_blank">jeremymanson@google.com</a>&gt;</span>  wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px \
#ccc solid;padding-left:1ex">  <div dir="ltr">I was drafting an agenda.   My \
expectation is  that the meeting will go something like this:
              <div><br>
                <div>
                  <div>Introductions  </div>
                  <div><br>
                  </div>
                  <div>Discussion of motivations for JEP 291 (Jon M)</div>
                  <div><br>
                  </div>
                  <div>Discussions of concerns about JEP 291
                    (roundtable)</div>
                  <div><br>
                  </div>
                  <div>Discussion / Brainstorming about potential ways
                    forward, as well as an understanding of what level
                    of commitment organizations are willing to make.</div>
                </div>
                <div><br>
                </div>
                <div>Discussion of action items and followup.</div>
                <span class="m_-8151589285105317466HOEnZb"><font color="#888888">
                    <div><br>
                    </div>
                    <div>Jeremy</div>
                    <div><br>
                    </div>
                  </font></span></div>
            </div>
            <div class="m_-8151589285105317466HOEnZb">
              <div class="m_-8151589285105317466h5">
                <div class="gmail_extra"><br>
                  <div class="gmail_quote">On Thu, Jul 21, 2016 at 7:39
                    AM, Martijn Verburg <span dir="ltr">&lt;<a \
href="mailto:martijnverburg@gmail.com" \
target="_blank">martijnverburg@gmail.com</a>&gt;</span>  wrote:<br>
                    <blockquote class="gmail_quote" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex">  <div dir="ltr">
                        <div>Hi Jon,</div>
                        <div><br>
                        </div>
                        <div>For me it&#39;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 <span \
id="m_-8151589285105317466m_3054826751780768038m_4881629336346031025:3ob.1">CMS</span>
                
                          as a collector going forwards (it&#39;s important
                          to several of our customers).   If that&#39;s a yes
                          then I&#39;d hope to have a technical discussion
                          around the options of how we could achieve
                          that without causing a major headache for the
                          Oracle <span \
id="m_-8151589285105317466m_3054826751780768038m_4881629336346031025:3ob.2">GC</span> \
engineers.<br>  </div>
                        <div><br>
                        </div>
                      </div>
                      <div class="gmail_extra"><br clear="all">
                        <div>
                          <div \
class="m_-8151589285105317466m_3054826751780768038m_4881629336346031025gmail_signature" \
data-smartmail="gmail_signature">Cheers,<br>  Martijn</div>
                        </div>
                        <div>
                          <div class="m_-8151589285105317466m_3054826751780768038h5"> \
<br>  <div class="gmail_quote">On 20 July 2016 at
                              23:50, Jon Masamitsu <span dir="ltr">&lt;<a \
href="mailto:jon.masamitsu@oracle.com" \
target="_blank">jon.masamitsu@oracle.com</a>&gt;</span>  wrote:<br>
                              <blockquote class="gmail_quote" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex">  <div bgcolor="#FFFFFF" \
text="#000000">  What are peoples expectations for this
                                  meeting?<br>
                                  <br>
                                  Jon<br>
                                  <br>
                                  <div>On 07/18/2016 10:16 AM, Jeremy
                                    Manson wrote:<br>
                                  </div>
                                  <blockquote type="cite">
                                    <div dir="ltr"><span \
style="color:rgb(85,85,85);font-size:12.8px;white-space:nowrap">Presumably,  everyone \
will be happy with  meeting notes rather than an
                                        actual recording.</span>
                                      <div><br>
                                      </div>
                                      <div><span \
style="color:rgb(85,85,85);font-size:12.8px;white-space:nowrap"></span>Otherwise,  \
I&#39;ll add:<br>  <div><br>
                                          <a href="mailto:ysr1729@gmail.com" \
                target="_blank">ysr1729@gmail.com</a><br>
                                          <a href="mailto:mark.reinhold@oracle.com" \
target="_blank">mark.reinhold@oracle.com</a>  <div>
                                            <table style="font-size:12.8px" \
cellpadding="0">  <tbody>
                                                <tr>
                                                  <td style="width:466px"><br>
                                                  </td>
                                                </tr>
                                              </tbody>
                                            </table>
                                          </div>
                                          <div><br>
                                          </div>
                                        </div>
                                      </div>
                                    </div>
                                    <div class="gmail_extra"><br>
                                      <div class="gmail_quote">On Mon,
                                        Jul 18, 2016 at 8:13 AM, <a \
                href="mailto:kirk.pepperdine@gmail.com" \
                target="_blank">kirk.pepperdine@gmail.com</a>
                                        <span dir="ltr">&lt;<a \
href="mailto:kirk.pepperdine@gmail.com" \
target="_blank">kirk.pepperdine@gmail.com</a>&gt;</span>  wrote:<br>
                                        <blockquote class="gmail_quote" \
                style="margin:0 0 0 .8ex;border-left:1px #ccc \
                solid;padding-left:1ex">
                                          <div style="word-wrap:break-word">ok
                                            we can record if everyone is
                                            open to that.
                                            <div>
                                              <div>
                                                <div><br>
                                                  <div>
                                                    <blockquote type="cite">
                                                      <div>On Jul 18,
                                                        2016, at 7:48
                                                        AM, Jeremy
                                                        Manson &lt;<a \
href="mailto:jeremymanson@google.com" target="_blank">jeremymanson@google.com</a>&gt; \
wrote:</div>  <br>
                                                      <div>
                                                        <div dir="ltr">Richard
                                                          - I&#39;ll bring
                                                          someone who
                                                          can take
                                                          readable
                                                          notes. :)
                                                          <div><br>
                                                          </div>
                                                          <div>Jeremy</div>
                                                        </div>
                                                        <div class="gmail_extra"><br>
                                                          <div class="gmail_quote">On
                                                          Sat, Jul 16,
                                                          2016 at 5:07
                                                          AM, <a \
href="mailto:kirk.pepperdine@gmail.com" target="_blank">kirk.pepperdine@gmail.com</a> \
<span dir="ltr">&lt;<a href="mailto:kirk.pepperdine@gmail.com" \
target="_blank">kirk.pepperdine@gmail.com</a>&gt;</span>  wrote:<br>
                                                          <blockquote \
class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc \
                solid;padding-left:1ex">
                                                          <div \
style="word-wrap:break-word">Hi  Richard,
                                                          <div><br>
                                                          </div>
                                                          <div>I think
                                                          it's in
                                                          everyone's
                                                          interest to
                                                          keep this out
                                                          in the open.</div>
                                                          <div><br>
                                                          </div>
                                                          <div>Kind
                                                          regards,</div>
                                                          <div>Kirk</div>
                                                          <div>
                                                          <div>
                                                          <div><br>
                                                          <div>
                                                          <blockquote type="cite">
                                                          <div>On Jul
                                                          16, 2016, at
                                                          1:34 AM,
                                                          Richard
                                                          Warburton &lt;<a \
href="mailto:richard.warburton@gmail.com" \
target="_blank">richard.warburton@gmail.com</a>&gt;  wrote:</div>
                                                          <br>
                                                          <div>
                                                          <div dir="ltr">Hi,<br>
                                                          <div \
                class="gmail_extra"><br>
                                                          <div class="gmail_quote">
                                                          <blockquote \
class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc \
                solid;padding-left:1ex">
                                                          <div dir="ltr">Sounds
                                                          as if the
                                                          consensus is a
                                                          telephone /
                                                          video
                                                          conference in
                                                          the near term,
                                                          and then a F2F
                                                          during / close
                                                          to JavaOne.
                                                          <div><br>
                                                          </div>
                                                          <div>People
                                                          who want to be
                                                          invited
                                                          include:</div>
                                                          <div><br>
                                                          </div>
                                                          <a \
                href="mailto:kirk@kodewerk.com" \
                target="_blank">kirk@kodewerk.com</a><br>
                                                          <a \
                href="mailto:aph@redhat.com" target="_blank">aph@redhat.com</a><br>
                                                          <a \
href="mailto:volker.simonis@gmail.com" \
                target="_blank">volker.simonis@gmail.com</a><br>
                                                          <a \
href="mailto:jon.masamitsu@oracle.com" \
                target="_blank">jon.masamitsu@oracle.com</a><br>
                                                          <a \
                href="mailto:jeremymanson@google.com" \
                target="_blank">jeremymanson@google.com</a><br>
                                                          <a \
                href="mailto:martijnverburg@gmail.com" \
                target="_blank">martijnverburg@gmail.com</a>
                                                          <div><a \
href="mailto:jwha@google.com" target="_blank">jwha@google.com</a></div>  <div><br>
                                                          </div>
                                                          <div>Did I
                                                          miss anyone?  
                                                          We can take
                                                          date / time
                                                          planning and
                                                          logistics
                                                          off-list.</div>
                                                          </div>
                                                          </blockquote>
                                                          </div>
                                                          <div \
class="gmail_extra"><br>  </div>
                                                          <div \
class="gmail_extra">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?</div>
                                                          <br>
                                                          <div \
data-smartmail="gmail_signature">  <div dir="ltr">
                                                          <div>
                                                          <div>regards,<br>
                                                          <br>
                                                          </div>
                                                             Richard
                                                          Warburton<br>
                                                          <br>
                                                          </div>
                                                          <div>   <a \
href="http://insightfullogic.com" target="_blank">http://insightfullogic.com</a><br>  \
                </div>
                                                          <div>   <a \
href="http://twitter.com/richardwarburto" target="_blank">@RichardWarburto</a><br>  \
</div>  </div>
                                                          </div>
                                                          </div>
                                                          </div>
                                                          </div>
                                                          </blockquote>
                                                          </div>
                                                          <br>
                                                          </div>
                                                          </div>
                                                          </div>
                                                          </div>
                                                          </blockquote>
                                                          </div>
                                                          <br>
                                                        </div>
                                                      </div>
                                                    </blockquote>
                                                  </div>
                                                  <br>
                                                </div>
                                              </div>
                                            </div>
                                          </div>
                                        </blockquote>
                                      </div>
                                      <br>
                                    </div>
                                  </blockquote>
                                  <br>
                                </div>
                              </blockquote>
                            </div>
                            <br>
                          </div>
                        </div>
                      </div>
                    </blockquote>
                  </div>
                  <br>
                </div>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
    </blockquote>
    <br>
  </div></div></div>

</blockquote></div><br></div>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic