RFR: 8350086: Inline hot Method accessors for faster task selection [v2]
Aleksey Shipilev
shade at openjdk.org
Fri Feb 14 15:05:46 UTC 2025
> These methods show up prominently on Leyden profiles, as compilation policy asks these properties for methods very often during compile task selection:
> - `Method::invocation_count`
> - `Method::backedge_count`
> - `Method::highest_comp_level`
>
> We can move the definitions for these methods to method.inline.hpp to make them eligible for better inlining.
>
> `interpreter_invocation_count()` method is a bit weird, looks like a leftover from [JDK-8251462](https://bugs.openjdk.org/browse/JDK-8251462). Removing it would prompt more cleanups and renamings in `ciMethod`, so I would leave it for future enhancement.
>
> Additional testing:
> - [x] Spot-checked Leyden profiles, methods are now fully inlined into hot `CompilerBroker` methods
> - [x] Ad-hoc Leyden benchmarks show minor improvements (< 1%) for time spent in compiler threads
Aleksey Shipilev has updated the pull request incrementally with one additional commit since the last revision:
Adjust includes to match the move
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/23634/files
- new: https://git.openjdk.org/jdk/pull/23634/files/845dc7d5..8f6d4fab
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=23634&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=23634&range=00-01
Stats: 2 lines in 2 files changed: 1 ins; 0 del; 1 mod
Patch: https://git.openjdk.org/jdk/pull/23634.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/23634/head:pull/23634
PR: https://git.openjdk.org/jdk/pull/23634
More information about the hotspot-dev
mailing list