RFR: 8331117: [PPC64] secondary_super_cache does not scale well [v3]
Martin Doerr
mdoerr at openjdk.org
Tue May 28 14:59:14 UTC 2024
> PPC64 implementation of [JDK-8180450](https://bugs.openjdk.org/browse/JDK-8180450). Please review!
> I noticed that `r_array_length` is sometimes 0 and I don't see code for that on x86. Any idea?
> How can we verify it? By comparing the performance using the micro benchmarks?
>
> Micro benchmark results without patch (measured on Power10 with 2*8 hardware threads):
>
> Original
> SecondarySuperCacheHits: 13.033 ±(99.9%) 0.058 ns/op [Average]
> SecondarySuperCacheInterContention.test avgt 15 432.366 ± 8.364 ns/op
> SecondarySuperCacheInterContention.test:t1 avgt 15 432.310 ± 8.460 ns/op
> SecondarySuperCacheInterContention.test:t2 avgt 15 432.422 ± 10.819 ns/op
> SecondarySuperCacheIntraContention.test avgt 15 355.192 ± 3.597 ns/op
> SecondarySupersLookup.testNegative00 avgt 15 12.274 ± 0.026 ns/op
> SecondarySupersLookup.testNegative01 avgt 15 12.300 ± 0.039 ns/op
> SecondarySupersLookup.testNegative02 avgt 15 12.304 ± 0.034 ns/op
> SecondarySupersLookup.testNegative03 avgt 15 12.276 ± 0.050 ns/op
> SecondarySupersLookup.testNegative04 avgt 15 12.235 ± 0.044 ns/op
> SecondarySupersLookup.testNegative05 avgt 15 12.308 ± 0.156 ns/op
> SecondarySupersLookup.testNegative06 avgt 15 12.291 ± 0.048 ns/op
> SecondarySupersLookup.testNegative07 avgt 15 12.307 ± 0.052 ns/op
> SecondarySupersLookup.testNegative08 avgt 15 12.398 ± 0.075 ns/op
> SecondarySupersLookup.testNegative09 avgt 15 12.552 ± 0.122 ns/op
> SecondarySupersLookup.testNegative10 avgt 15 12.490 ± 0.083 ns/op
> SecondarySupersLookup.testNegative16 avgt 15 12.565 ± 0.092 ns/op
> SecondarySupersLookup.testNegative20 avgt 15 19.059 ± 0.958 ns/op
> SecondarySupersLookup.testNegative30 avgt 15 19.268 ± 0.124 ns/op
> SecondarySupersLookup.testNegative32 avgt 15 20.059 ± 0.114 ns/op
> SecondarySupersLookup.testNegative40 avgt 15 25.117 ± 0.368 ns/op
> SecondarySupersLookup.testNegative50 avgt 15 32.735 ± 0.359 ns/op
> SecondarySupersLookup.testNegative55 avgt 15 34.866 ± 0.152 ns/op
> SecondarySupersLookup.testNegative56 avgt 15 35.492 ± 0.276 ns/op
> SecondarySupersLookup.testNegative57 avgt 15 36.620 ± 0.334 ns/op
> SecondarySupersLookup.testNegative58 avgt 15 37.226 ± 0.180 ns/op
> SecondarySupersLookup.testNegative59 avgt 15 37.774 ± 0.241 ns/op
> SecondarySupersLookup.testNegative60 avgt 15 38.627 ± 1.451 ns/op
> SecondarySupersLookup.testNegative61 avgt 15 39.395 ± 0.249 ns/op
> SecondarySupersLookup.testNegative62 avgt 15 ...
Martin Doerr has updated the pull request incrementally with one additional commit since the last revision:
Adapt assertion. We sometimes have only 1 element in the secondary supers array.
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/19368/files
- new: https://git.openjdk.org/jdk/pull/19368/files/6753375e..c1840719
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=19368&range=02
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=19368&range=01-02
Stats: 4 lines in 1 file changed: 0 ins; 0 del; 4 mod
Patch: https://git.openjdk.org/jdk/pull/19368.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/19368/head:pull/19368
PR: https://git.openjdk.org/jdk/pull/19368
More information about the hotspot-compiler-dev
mailing list