<!DOCTYPE html><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <link rel="stylesheet" href="moz-extension://aa8b6de7-3f78-465d-87c7-03091dbf00e6/vendor/textcomplete.css">
  </head>
  <body>
    <p>Thanks Brian<br>
    </p>
    <div class="moz-cite-prefix">On 19/11/2024 15:35, Brian S O'Neill
      wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:248f7ae7-1481-49c1-a36f-144cad08e3d6@gmail.com">I've
      already been running some tests against build 24 to see what
      affect pull 21810 has. Tests using the transformed VarHandle
      technique didn't show much improvement. </blockquote>
    I believe that's to be expected. <br>
    <blockquote type="cite" cite="mid:248f7ae7-1481-49c1-a36f-144cad08e3d6@gmail.com">I just
      started running tests which access the (effectively) unbounded
      MemorySegment and will report back in about an hour.
      <br>
    </blockquote>
    <p>That would be the more interesting one, yes. That said, I'm kind
      of prepared not to see the gains in the synthetic benchmark to
      translate in bigger real world gains (but I'd be very happy to be
      wrong here :) ).<br>
    </p>
    <p>Maurizio<br>
    </p>
    <blockquote type="cite" cite="mid:248f7ae7-1481-49c1-a36f-144cad08e3d6@gmail.com">
      <br>
      On 2024-11-19 06:42 AM, Maurizio Cimadamore wrote:
      <br>
      <blockquote type="cite">Hi,
        <br>
        some performance tweaks have landed in the JDK 24 early access
        build (build 24):
        <br>
        <br>
        <a class="moz-txt-link-freetext" href="https://jdk.java.net/24/">https://jdk.java.net/24/</a>
        <br>
        <br>
        They are:
        <br>
        <br>
        <a class="moz-txt-link-freetext" href="https://git.openjdk.org/jdk/pull/21764">https://git.openjdk.org/jdk/pull/21764</a>
        <br>
        <a class="moz-txt-link-freetext" href="https://git.openjdk.org/jdk/pull/21810">https://git.openjdk.org/jdk/pull/21810</a>
        <br>
        <br>
        The former contains some optimizations for `MemorySegment
        <br>
        <br>
        ` which should improve scalarization - see [1]. The second
        contains an improvement to the way we perform the liveness
        check, which should make such check provably redundant for
        segments backed by the global arena. This should improve the
        performance of workarounds using an “everything” segment to
        access off-heap memory with minimal impact from bound checks
        [2].
        <br>
        <br>
        As JDK 24 is moving closer to rampdown phase [3], it would be
        great to give such changes a try and report back.
        <br>
        <br>
        Cheers
        <br>
        Maurizio
        <br>
        <br>
        [1] -
        <a class="moz-txt-link-freetext" href="https://mail.openjdk.org/pipermail/panama-dev/2024-October/020702.html">https://mail.openjdk.org/pipermail/panama-dev/2024-October/020702.html</a>
        <br>
        [2] -
        <a class="moz-txt-link-freetext" href="https://mail.openjdk.org/pipermail/panama-dev/2024-October/020736.html">https://mail.openjdk.org/pipermail/panama-dev/2024-October/020736.html</a>
        <br>
        [3] - <a class="moz-txt-link-freetext" href="https://openjdk.org/projects/jdk/24/">https://openjdk.org/projects/jdk/24/</a>
        <br>
        <br>
        &#8203;
        <br>
        <br>
        &#8203;
        <br>
      </blockquote>
      <br>
    </blockquote>
    <ul class="dropdown-menu textcomplete-dropdown" style="display: none; position: absolute; z-index: 1000;" contenteditable="false">
    </ul>
  </body>
</html>