RFR: 8359107: [leyden] Pick up JDK-8357481, JDK-8357473 and rework precompilation waits

Aleksey Shipilev shade at openjdk.org
Tue Jun 10 10:45:55 UTC 2025


On Tue, 10 Jun 2025 10:09:25 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> [JDK-8357481](https://bugs.openjdk.org/browse/JDK-8357481) will come in from mainline and bring conflicting changes to CompileTask. Additionally, our precompilation ([JDK-8352042](https://bugs.openjdk.org/browse/JDK-8352042)) depends on the code that would go away with [JDK-8357473](https://bugs.openjdk.org/browse/JDK-8357473). We should cherry-pick [JDK-8357481](https://bugs.openjdk.org/browse/JDK-8357481), [JDK-8357473](https://bugs.openjdk.org/browse/JDK-8357473) and rework parallel recompilation to use the newly created `CompileTaskWait_lock` for notifications.
> 
> Additional testing:
>  - [x] Ad-hoc performance tests
>  - [x] Linux x86_64 server fastdebug, `runtime/cds`

Some perf data shows this is mostly a wash, as expected. We optimize footprint with this change.


Benchmark 1: build/linux-x86_64-server-release/images/jdk/bin/java -Xms64m -Xmx1g -XX:+UseSerialGC -cp JavacBenchApp.jar -XX:AOTCache=app.aot JavacBenchApp 50

# Current premain
  Time (mean ± σ):     328.0 ms ±   2.5 ms    [User: 666.9 ms, System: 104.9 ms]
  Range (min … max):   324.2 ms … 334.1 ms    30 runs

# This PR
  Time (mean ± σ):     326.9 ms ±   2.5 ms    [User: 655.2 ms, System: 101.2 ms]
  Range (min … max):   322.6 ms … 331.5 ms    30 runs

-------------

PR Comment: https://git.openjdk.org/leyden/pull/79#issuecomment-2958620083


More information about the leyden-dev mailing list