<!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>