RFR: 8370947: Mitigate Neoverse-N1 erratum 1542419 negative impact on GCs and JIT performance [v28]
Andrew Haley
aph at openjdk.org
Thu Feb 26 10:17:53 UTC 2026
On Thu, 19 Feb 2026 16:13:56 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:
>> Evgeny Astigeevich has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Do fullGC when multiple threads execute test methods
>
> src/hotspot/share/code/relocInfo.cpp line 621:
>
>> 619:
>> 620:
>> 621: bool metadata_Relocation::fix_metadata_relocation() {
>
> I understand we return the status here, so that we avoid invalidation when there is no real patching work was done. Granted, it likely matches the behavior we have. But I wonder how much this buys us? If we are doing the deferred invalidation in a very broad scope, it stands to reason we would _almost definitely_ have to invalidate, and all this tracking would _nearly always_ give us the same answer, "Do invalidate"?
>
> IOW, this might be an unnecessary complication of the interface.
>
> _Dropping_ this change would also be more robust, in cases something somewhere _forgets_ to announce the code cache was changed? If we don't trust the downstream code about this and just summarily invalidate, it feels safer.
> @shipilev
>
> > But I wonder how much this buys us?
>
> SPECjvm crypto.aes is the case for this change. When I ran it on Graviton 2, 64 cores I got the following scores:
>
> * Baseline: 1047(min), 1058(max), 1052(geomean)
>
> * PR: 1058(min), 1078(max), 1069(geomean), +1.6% improvement
This improvement is almost in the noise. What's the average SPECjvm improvement?
> **OPTION 1**: If we don't track code modification in `fix_oop_relocations` and assume any call of `fix_oop_relocations` requires icache invalidation, results are the following:
>
> * 1032(min), 1057(max), 1045(geomean), -0.7% regression
So, Options 1 and 2 are actually worse than doing nothing?
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/28328#discussion_r2858154579
More information about the shenandoah-dev
mailing list