RFR: 8300002: Performance regression caused by non-inlined hot methods due to post call noop instructions [v3]
Vladimir Kozlov
kvn at openjdk.org
Mon Jan 16 01:58:11 UTC 2023
On Mon, 16 Jan 2023 01:36:32 GMT, Sergey Kuksenko <skuksenko at openjdk.org> wrote:
>> Post call nop instructions increase the size of methods, which leads to different inline decisions and performance regression.
>> Restore inline behavior by excluding post call nop instructions sizes from inline heuristics.
>
> Sergey Kuksenko has updated the pull request incrementally with two additional commits since the last revision:
>
> - whitespace clenup
> - renaming; generalize; make methods independent on post call noops naming
I don't see `_instructions_size` is used anymore so I suggest simply remove it and use `_inline_instructions_size`. Which was original purpose of this value anyway.
You missed ciReplay change to record `_inline_instructions_size` and restore it. That is what is used in inlining decision in your changes.
Also you need to record it in vmStructs.cpp. Just rename it.
-------------
Changes requested by kvn (Reviewer).
PR: https://git.openjdk.org/jdk/pull/11958
More information about the hotspot-dev
mailing list