RFR: 8277180: Intrinsify recursive ObjectMonitor locking for C2 x64 and A64 [v3]
Erik Österlund
eosterlund at openjdk.java.net
Wed Nov 17 11:19:09 UTC 2021
> The C2 fast_lock and fast_unlock intrinsics don't support recursive ObjectMonitor locking. Some workloads can significantly benefit from this. Recent ObjectMonitor work has changed heuristics such that ObjectMonitors are deflated less aggressively. Therefore we can expect to see more inflated monitors in workloads where we would usually see more stack locks. That in itself is fine, except that C2 doesn't intrinsify the recursive locking paths for object monitors. Enabling those cases in the C2 code, removes a (~17%) regression we have seen with DaCapo h2 -t 1, and makes a few more benchmarks happy as well.
Erik Österlund has updated the pull request incrementally with one additional commit since the last revision:
use increment macro
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/6406/files
- new: https://git.openjdk.java.net/jdk/pull/6406/files/7832a9f4..26e69b28
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=6406&range=02
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=6406&range=01-02
Stats: 3 lines in 1 file changed: 0 ins; 2 del; 1 mod
Patch: https://git.openjdk.java.net/jdk/pull/6406.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/6406/head:pull/6406
PR: https://git.openjdk.java.net/jdk/pull/6406
More information about the hotspot-compiler-dev
mailing list