<!DOCTYPE html><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <p>Thanks for the -nosplash hint. Regarding the "Launch" button,
      that is from the "Select a directory as workspace" dialog box.
      After selecting the "do not ask again" checkbox, the dialog didn't
      popup again.</p>
    <p>On linux-x64 without the --add-module=ALL-SYSTEM, I saw an
      improvement of AOT over CDS by approx. 13%.</p>
    Thanks!<br>
    Calvin
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 7/19/25 5:22 AM, Daniel Schmid
      wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:fc47c46b-6d26-4337-9cd3-c49e48c0e056@wwwmaster.at">
      
      <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">
        <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">
          <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>
    </blockquote>
  </body>
</html>