<!DOCTYPE html><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <p><font face="monospace">I've updated the benchmark numbers using
        the latest premain tip (as of 2025/09/30):</font></p>
    <p><font face="monospace"><a class="moz-txt-link-freetext" href="https://github.com/openjdk/leyden/blob/premain/README.md#premain-aot-cache-summary">https://github.com/openjdk/leyden/blob/premain/README.md#premain-aot-cache-summary</a></font></p>
    <p><font face="monospace">There's quite a bit of improvement due to
        the new compiler tuning changes by Aleksey. I also added a "2
        cores only" mode to emulate microservices that are allocated
        very few CPUs.</font></p>
    <p><font face="monospace"><br>
        Here are the results of {premain AOT} vs {JDK 25, no CDS, no
        AOT}. Note that premain is generally much more beneficial with
        the 2 Cores Only case, except for PetClinic:<br>
        <br>
        <br>
        Benchmark        Desktop/Server Class (28 Cores)   2 Cores Only<br>
        <b>----------------------------------------------------------------------------<br>
        </b>Helidon Quick Start                3.59x               
        4.11x  ++<br>
        JavacBenchApp 50 source files      2.21x                3.17x 
        ++++<br>
        Micronaut First App Demo           2.91x                4.90x 
        +++++++<br>
        Quarkus Getting Started Demo       2.97x                3.74x 
        +++<br>
        Spring-boot Getting Started Demo   4.13x                4.70x 
        ++<br>
        Spring PetClinic Demo              3.33x                3.03x 
        -- ???<br>
      </font></p>
    <p><font face="monospace"><br>
        <br>
        Changes from last time (
<a class="moz-txt-link-freetext" href="https://github.com/openjdk/leyden/blob/46e03d000efd1b2784ad4dcd4c83310ace498ec0/README.md">https://github.com/openjdk/leyden/blob/46e03d000efd1b2784ad4dcd4c83310ace498ec0/README.md</a>
        )</font></p>
    <p><font face="monospace">The 2 Core Only case see a lot of
        improvements with the compiler tuning. PetClinic is again an
        outlier.</font></p>
    <p><font face="monospace">Benchmark           Desktop/Server Class
        (28 Cores)   2 Cores Only<br>
----------------------------------------------------------------------------<br>
        Helidon Quick Start                3.60 -> 3.59x  ~      3.53
        -> 4.11x  ++<br>
        JavacBenchApp 50 source files      2.17 -> 2.21x  ~      2.74
        -> 3.17x  ++<br>
        Micronaut First App Demo           2.85 -> 2.91x  +      4.39
        -> 4.90x  ++<br>
        Quarkus Getting Started Demo       2.73 -> 2.97x  ++     2.95
        -> 3.74x  +++<br>
        Spring-boot Getting Started Demo   3.96 -> 4.13x  ++     3.70
        -> 4.70x  +++<br>
        Spring PetClinic Demo              3.24 -> 3.33x  +      3.04
        -> 3.03x  ~</font></p>
    <p><font face="monospace">(The +, -, ~ are calculated by my eyeballs
        so not very scientific :-)</font></p>
    <p><font face="monospace"><br>
      </font></p>
    <p><font face="monospace"><br>
      </font></p>
  </body>
</html>