RFR: 8314220: Configurable InlineCacheBuffer size [v4]

Kelvin Nilsen kdnilsen at openjdk.org
Mon Nov 27 18:05:23 UTC 2023


On Tue, 21 Nov 2023 17:41:26 GMT, Ekaterina Vergizova <evergizova at openjdk.org> wrote:

>> InlineCacheBuffer size is currently hardcoded to 10K.
>> This can lead to multiple ICBufferFull safepoints for InlineCacheBuffer cleanup and possible performance degradation.
>> 
>> Added experimental command line option InlineCacheBufferSize with the same default value, allowing it to be configured for performance experiments with ICBufferFull safepoints frequency.
>
> Ekaterina Vergizova has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Changed InlineCacheBufferSize limit

Thanks for integrating this patch.  Generational Shenandoah has also observed problems with this issue.  For a user who is not intimately familiar with the internal workings of the JIT compilers, is there any advice as to what value we should set this to?

I'm guessing the answer might relate to:

1. How often do we experience ICBufferFull safepoints in the absence of concurrent GC.  Does this tell us anything?
2. What is the typical duration of a concurrent GC cycle?
3. Is there a recommendation for safety buffer?

FWIW: We are aware of a service that consistently experiences roughly 30 ICBufferFull safepoints during the third concurrent GC following each restart (without your patch).  Once we survive this startup storm, we do not experience any further problems.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/15271#issuecomment-1828350944


More information about the hotspot-dev mailing list