Withdrawn: 8331658: secondary_super_cache does not scale well: C1
Andrew Haley
aph at openjdk.org
Tue Jun 4 12:53:15 UTC 2024
On Tue, 28 May 2024 13:22:41 GMT, Andrew Haley <aph at openjdk.org> wrote:
> This is the C1 version of [JDK-8180450](https://bugs.openjdk.org/browse/JDK-8180450).
>
> The new logic in this PR is as simple as I can make it. It is a somewhat-simplified version of the C2 change in [JDK-8180450](https://bugs.openjdk.org/browse/JDK-8180450). In order to reduce risk I haven't touched the existing slow subtype stub.
> The register allocation logic in the existing code is pretty gnarly, and I have no desire to break anything at this point in the release cycle, so I have allocated just one register more than the existing code does.
>
> Performance is pretty good. Before and after:
>
> x64, AMD 2950X, 8 cores:
>
>
> Benchmark Mode Cnt Score Error Units
> SecondarySuperCacheHits.test avgt 5 0.959 ± 0.091 ns/op
> SecondarySuperCacheInterContention.test avgt 5 42.931 ± 6.951 ns/op
> SecondarySuperCacheInterContention.test:t1 avgt 5 42.397 ± 7.708 ns/op
> SecondarySuperCacheInterContention.test:t2 avgt 5 43.466 ± 8.238 ns/op
> SecondarySuperCacheIntraContention.test avgt 5 74.660 ± 0.127 ns/op
>
> SecondarySuperCacheHits.test avgt 5 1.480 ± 0.077 ns/op
> SecondarySuperCacheInterContention.test avgt 5 1.461 ± 0.063 ns/op
> SecondarySuperCacheInterContention.test:t1 avgt 5 1.767 ± 0.078 ns/op
> SecondarySuperCacheInterContention.test:t2 avgt 5 1.155 ± 0.052 ns/op
> SecondarySuperCacheIntraContention.test avgt 5 1.421 ± 0.002 ns/op
>
> AArch64, Mac M3, 8 cores:
>
>
> Benchmark Mode Cnt Score Error Units
> SecondarySuperCacheHits.test avgt 5 0.835 ± 0.021 ns/op
> SecondarySuperCacheInterContention.test avgt 5 74.078 ± 18.095 ns/op
> SecondarySuperCacheInterContention.test:t1 avgt 5 81.863 ± 42.492 ns/op
> SecondarySuperCacheInterContention.test:t2 avgt 5 66.293 ± 11.254 ns/op
> SecondarySuperCacheIntraContention.test avgt 5 335.563 ± 6.171 ns/op
>
> SecondarySuperCacheHits.test avgt 5 1.212 ± 0.004 ns/op
> SecondarySuperCacheInterContention.test avgt 5 0.871 ± 0.002 ns/op
> SecondarySuperCacheInterContention.test:t1 avgt 5 0.626 ± 0.003 ns/op
> SecondarySuperCacheInterContention.test:t2 avgt 5 1.115 ± 0.006 ns/op
> SecondarySuperCacheIntraContention.test avgt 5 0.696 ± 0.001 ns/op
>
>
>
> The first test, `SecondarySuperCacheHits`, showns a small regression. It's the "happy path" which simply checks the same subclass again and again in a loop, i...
This pull request has been closed without being integrated.
-------------
PR: https://git.openjdk.org/jdk/pull/19426
More information about the hotspot-compiler-dev
mailing list