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