RFR: 8331126: [s390x] secondary_super_cache does not scale well [v15]
Andrew Haley
aph at openjdk.org
Mon Jul 1 14:11:33 UTC 2024
On Mon, 1 Jul 2024 09:52:48 GMT, Amit Kumar <amitkumar at openjdk.org> wrote:
>> s390x Port for [JDK-8180450](https://bugs.openjdk.org/browse/JDK-8180450)
>>
>> I ran `tier1` test with `-XX:+UseSecondarySupersTable -XX:+VerifySecondarySupers -XX:+StressSecondarySupers` in fastdebug vm and didn't see any new failure appearing; Except one I have mentioned [here](https://github.com/openjdk/jdk/pull/19368#issuecomment-2154983693); But this is reproducible on every other architecture with these flags.
>>
>>
>> Without Patch:
>>
>> SecondarySuperCacheHits.test avgt 15 0.929 ± 0.010 ns/op
>>
>> SecondarySuperCacheInterContention.test avgt 15 1.413 ± 0.007 ns/op
>> SecondarySuperCacheInterContention.test:t1 avgt 15 1.415 ± 0.016 ns/op
>> SecondarySuperCacheInterContention.test:t2 avgt 15 1.410 ± 0.017 ns/op
>>
>> Benchmark Mode Cnt Score Error Units
>> SecondarySupersLookup.testNegative00 avgt 15 1.806 ± 0.325 ns/op
>> SecondarySupersLookup.testNegative01 avgt 15 2.364 ± 0.236 ns/op
>> SecondarySupersLookup.testNegative02 avgt 15 2.903 ± 0.215 ns/op
>> SecondarySupersLookup.testNegative03 avgt 15 3.417 ± 0.199 ns/op
>> SecondarySupersLookup.testNegative04 avgt 15 3.758 ± 0.102 ns/op
>> SecondarySupersLookup.testNegative05 avgt 15 4.352 ± 0.123 ns/op
>> SecondarySupersLookup.testNegative06 avgt 15 4.800 ± 0.099 ns/op
>> SecondarySupersLookup.testNegative07 avgt 15 5.365 ± 0.060 ns/op
>> SecondarySupersLookup.testNegative08 avgt 15 6.316 ± 0.092 ns/op
>> SecondarySupersLookup.testNegative09 avgt 15 6.669 ± 0.164 ns/op
>> SecondarySupersLookup.testNegative10 avgt 15 7.041 ± 0.164 ns/op
>> SecondarySupersLookup.testNegative16 avgt 15 9.336 ± 0.185 ns/op
>> SecondarySupersLookup.testNegative20 avgt 15 11.373 ± 0.029 ns/op
>> SecondarySupersLookup.testNegative30 avgt 15 15.236 ± 0.051 ns/op
>> SecondarySupersLookup.testNegative32 avgt 15 16.031 ± 0.091 ns/op
>> SecondarySupersLookup.testNegative40 avgt 15 19.197 ± 0.279 ns/op
>> SecondarySupersLookup.testNegative50 avgt 15 23.804 ± 2.387 ns/op
>> SecondarySupersLookup.testNegative55 avgt 15 25.610 ± 1.155 ns/op
>> SecondarySupersLookup.testNegative56 avgt 15 26.128 ± 2.203 ns/op
>> SecondarySupersLookup.testNegative57 avgt 15 26.126 ± 0.881 ns/op
>> SecondarySupersLookup.testNegative58 avgt 15 26.314 ± 0.521 ns/op
>> SecondarySupersLookup.testNegative59 avgt 15 26.750 ± 0.837 ns/op
>> SecondarySupersLookup.testNegative60 avgt 15 27.118 ± 0.557 ...
>
> Amit Kumar has updated the pull request incrementally with one additional commit since the last revision:
>
> updates comment
src/hotspot/cpu/s390/macroAssembler_s390.cpp line 3177:
> 3175:
> 3176: // z_brct above doesn't change CC.
> 3177: // If the search operation is unsuccessful, then it's a failure case.
Suggestion:
// If we reach here, then the value in r_value is not present. Set r_result to 1.
"Failure" is not a good word to use here, because it's unclear what failed.
src/hotspot/cpu/s390/macroAssembler_s390.cpp line 3362:
> 3360: z_bre(L_done); // success
> 3361:
> 3362: // look-ahead check (Bit 2), if bit-2 is also 0, we're done
Suggestion:
// look-ahead check: if Bit 2 is 0, we're done
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/19544#discussion_r1661115340
PR Review Comment: https://git.openjdk.org/jdk/pull/19544#discussion_r1661108285
More information about the hotspot-dev
mailing list