RFR: Prefer to take AOT method from the SC queue faster
Aleksey Shipilev
shade at openjdk.org
Fri Sep 6 19:53:45 UTC 2024
Probably WIP. Humor me for a second: why could not / should not we take the AOT task for "compilation" (installation, really) right away like this? I suspect when SC queues are overwhelmed with N elements, we keep walking the entire SC queue for no particular reason?
This improves javac benchmark considerably (look at both wall time and user time):
# BEFORE
Benchmark 1: build/linux-x86_64-server-release/images/jdk/bin/java -XX:CacheDataStore=app.cds -Xmx256m -Xms256m -XX:+UnlockExperimentalVMOptions -XX:+UseEpsilonGC -cp JavacBenchApp.jar JavacBenchApp 50
Time (mean ± σ): 348.3 ms ± 2.8 ms [User: 949.0 ms, System: 101.4 ms]
Range (min … max): 344.0 ms … 355.3 ms 100 runs
# AFTER
Benchmark 1: build/linux-x86_64-server-release/images/jdk/bin/java -XX:CacheDataStore=app.cds -Xmx256m -Xms256m -XX:+UnlockExperimentalVMOptions -XX:+UseEpsilonGC -cp JavacBenchApp.jar JavacBenchApp 50
Time (mean ± σ): 312.2 ms ± 2.6 ms [User: 577.8 ms, System: 95.4 ms]
Range (min … max): 307.1 ms … 318.5 ms 100 runs
-------------
Commit messages:
- Fix
Changes: https://git.openjdk.org/leyden/pull/17/files
Webrev: https://webrevs.openjdk.org/?repo=leyden&pr=17&range=00
Stats: 6 lines in 1 file changed: 6 ins; 0 del; 0 mod
Patch: https://git.openjdk.org/leyden/pull/17.diff
Fetch: git fetch https://git.openjdk.org/leyden.git pull/17/head:pull/17
PR: https://git.openjdk.org/leyden/pull/17
More information about the leyden-dev
mailing list