<!DOCTYPE html><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <p>Hi Charlie,</p>
    <p>Thanks for trying CDS out. Is there any performance numbers you
      can share with us?</p>
    <p>More comments below</p>
    <p><br>
    </p>
    <p></p>
    <p></p>
    <div class="moz-cite-prefix">On 2/12/25 10:37 AM, Charles Oliver
      Nutter wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:CAE-f1xQtjsXoh3gEAfjKBM33Dcmj2SrFDUTnGC4Lg4T_xs5LoQ@mail.gmail.com">
      
      <div dir="ltr">
        <div>Hello friends, I'm revisiting CDS-related stuff in JRuby
          today! Claes R. suggested I direct my CDS questions here,
          since this list represents the future of that work.</div>
        <div><br>
        </div>
        <div>We are keenly awaiting the new AOTCache stuff but for now
          I'm looking primarily at AppCDS or DynamicCDS given the
          upcoming JRuby 10 baseline JDK level of 21.</div>
        <div><br>
        </div>
        <div>So, I have a JRuby launcher script that already can detect
          and use a jsa generated for JRuby into the install location.
          I'm adding a flag to run -XX:ArchiveClassesAtExit and have a
          few questions:</div>
        <div><br>
        </div>
        <div>* OMG that warning output... is there any way to capture
          that to a file without redirecting the whole process?</div>
        <div>* Why is it not possible to boot with one JSA and then dump
          a new JSA at the end? It complains if I use both
          SharedArchiveFile and ArchiveClassesAtExit in the same command
          line.</div>
      </div>
    </blockquote>
    <p><br>
    </p>
    <p>That's something we are talking about in the Leyden project -
      train with an existing cache and write an updated cache at the
      end. What kinds of scenarios are you looking at?<br>
    </p>
    <p><br>
    </p>
    <blockquote type="cite" cite="mid:CAE-f1xQtjsXoh3gEAfjKBM33Dcmj2SrFDUTnGC4Lg4T_xs5LoQ@mail.gmail.com">
      <div dir="ltr">
        <div>* Is there any way to verify if the JSA will be usable (not
          stale, etc) without parsing stderr output from the failed
          attempt to use it?</div>
        <div><br>
        </div>
        <div>Basically I'm trying to make this a hidden automatic
          feature in the JRuby launcher: if the JSA doesn't exist,
          generate and use it; if it's stale because JRuby or JDK
          changed, regenerate and use it. That's hard to do if it's
          spitting warnings at my users.</div>
        <div> </div>
      </div>
    </blockquote>
    <p>Have you tried the -XX:+AutoCreateSharedArchive flag? It should
      recreate the dynamic archive if you have updated the app's JAR
      files or updated to a new JDK.<br>
    </p>
    <p>See
      <a class="moz-txt-link-freetext" href="https://docs.oracle.com/en/java/javase/21/docs/specs/man/java.html">https://docs.oracle.com/en/java/javase/21/docs/specs/man/java.html</a><br>
    </p>
    <p>Thanks</p>
    <p>- Ioi<br>
    </p>
    <p><br>
    </p>
    <p><br>
    </p>
    <blockquote type="cite" cite="mid:CAE-f1xQtjsXoh3gEAfjKBM33Dcmj2SrFDUTnGC4Lg4T_xs5LoQ@mail.gmail.com">
      <div dir="ltr">
        <div>
          <div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature">
            <div dir="ltr"><b>Charles Oliver Nutter</b>
              <div><i>Architect and Technologist</i></div>
              <div>Headius Enterprises</div>
              <a href="https://www.headius.com" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">https://www.headius.com</a>
              <div>
                <div><a href="mailto:headius@headius.com" target="_blank" moz-do-not-send="true" class="moz-txt-link-freetext">headius@headius.com</a></div>
              </div>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
  </body>
</html>