<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>I forgot to mention that you can add -nosplash to the CLI and it
      won't show the splashscreen. You can also use -application
      <app> to run a specific application (and not show the
      Eclipse GUI at all, e.g. run EJC from the CLI) but I don't that
      makes much sense in the context of my experiments (I am interest
      in "normal" Eclipse startup time and not startup of other
      applications that are part of the Eclipse IDE).</p>
    <p>Greetings,<br>
      Daniel<br>
    </p>
    <div class="moz-cite-prefix">On 19/07/2025 11:13, Daniel Schmid
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:8668e29d-a599-462b-afcd-b6ef07b0e80a@wwwmaster.at">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <p>Hi Calvin,</p>
      <p>Thanks for the hint. Without --add-modules=ALL-SYSTEM, I am
        indeed getting rid of the error and there seems to be an
        improvement of AOT over CDS (though I don't have a proper test
        setup so all my results are very noisy).</p>
      <p>I wasn't using the "Launch" button in the Eclipse Window, I
        just ran the Eclipse binary from bash. I think if you are on
        Windows, you might need to run eclipsec.exe instead of
        eclipse.exe (or appand -console or something like that). Also, I
        didn't add these custom arguments to the eclipse.ini file but
        directly to the command line.<br>
        Also on Windows, I think it might make a difference whether you
        are using java.exe, javaw.exe and jvm.dll in the -vm option.</p>
      <p>Yours,<br>
        Daniel<br>
      </p>
      <div class="moz-cite-prefix">On 19/07/2025 03:38, Calvin Cheung
        wrote:<br>
      </div>
      <blockquote type="cite"
        cite="mid:2587ad42-543c-47d1-a99b-075ebf1ae80f@oracle.com">
        <meta http-equiv="Content-Type"
          content="text/html; charset=UTF-8">
        <p>Hi Daniel,</p>
        <p>Thanks for your experiments with CDS and AOT.</p>
        <p>From your AOT_logs_26ea.txt:</p>
        <p> </p>
        <blockquote type="cite">WARNING: Using incubator modules:
          jdk.incubator.vector<br>
          [0.055s][info][aot] Not starting management agent during
          creation of AOT cache.<br>
          Reading AOTConfiguration app.aotconf and writing AOTCache
          app.aot<br>
          [0.057s][error][aot] An error has occurred while processing
          the AOT configuration file. Run with -Xlog:aot for details.<br>
          [0.057s][error][aot] archivedBootLayer not available,
          disabling full module graph</blockquote>
        <p>The jdk.incubator.vector incubator module is included. We
          currently don't archive the boot layer if an incubator module
          is included in the module configuration. The incubator is
          added because the eclipse.ini file contains:</p>
        <p>--add-modules=ALL-SYSTEM</p>
        <p>I tried removing the above line from eclipse.ini and I don't
          see the above error anymore.</p>
        <p>Can you give it a try?</p>
        <p>I also tried your method of measuring the eclipse startup
          time by checking the line starting with "Application started
          in:" at the terminal. I noticed the line won't show up until I
          click on the "Launch" button on the eclipse window. Are you
          able to start eclipse without any splash screen and GUI?</p>
        Thanks!<br>
        Calvin
        <p><br>
        </p>
        <div class="moz-cite-prefix">On 7/18/25 5:47 AM, Daniel Schmid
          wrote:<br>
        </div>
        <blockquote type="cite"
          cite="mid:a80b021b-5f31-4ed8-9a2c-9fbb84eaa325@wwwmaster.at">
          <p>Hi there,</p>
          <p>I made a few experiments with CDS and AOT archives on the
            Eclipse IDE and wanted to share my results here.<br>
            I ran 4 Eclipse installations (my personal main Eclipse
            installation is in a comment further down) with AppCDS and
            -XX:AOTCache and I have written down my results here: <a
              class="moz-txt-link-freetext"
href="https://github.com/eclipse-platform/eclipse.platform/discussions/2060"
              moz-do-not-send="true">https://github.com/eclipse-platform/eclipse.platform/discussions/2060</a></p>
          <p>I think the Eclipse IDE is an interesting application to
            test as it is a fairly big codebase with many classes loaded
            at runtime (so it doesn't make it easy for Leyden's
            improvements) via OSGi.</p>
          <p>I have used the latest EA build of JDK 26 (26-ea+6-582).
            Should I use a different JDK build to test it?<br>
          </p>
          <p>Essentially my findings (which are relevant to this mailing
            list) are the following:<br>
            - There has been an error when creating the AOT archive but
            it was still created and it was usable. I want to make sure
            that the people here are aware of that error. To be honest,
            I did not expect -XX:AOTCache to work that well with
            Eclipse.<br>
            - While CDS seems to come with a noticeable improvement for
            Eclipse startup time, -XX:AOTCache seems to have similar
            startup times as CDS (not faster). This might be because of
            Eclipse's class loading shenanigans.<br>
            - It worked with an agent attached (The Lombok tooling for
            Eclipse attaches an agent into the IDE, I think that's
            necessary to inject itself into the Eclipse Java Compiler).<br>
          </p>
          <p><br>
          </p>
          <p>The error I got:</p>
          <pre class="notranslate"><code class="notranslate">[0.074s][error][aot] An error has occurred while processing the AOT configuration file. Run with -Xlog:aot for details.
[0.074s][error][aot] archivedBootLayer not available, disabling full module graph
AOTCache creation is complete: app.aot 106397696 bytes

</code></pre>
          <p>I provided the logs here: <a
href="https://github.com/user-attachments/files/21313886/AOT_logs_26ea.txt"
              class="moz-txt-link-freetext" moz-do-not-send="true">https://github.com/user-attachments/files/21313886/AOT_logs_26ea.txt</a>
            (technically not the same run but it also has that error).<br>
          </p>
          <p><br>
          </p>
          Yours,<br>
          Daniel Schmid<br>
        </blockquote>
      </blockquote>
    </blockquote>
  </body>
</html>