RFR: 8331126: [s390x] secondary_super_cache does not scale well

Amit Kumar amitkumar at openjdk.org
Fri Jun 14 13:12:43 UTC 2024


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  ns/op
SecondarySupersLookup.testNegative61  avgt   15  27.763 ± 1.628  ns/op
SecondarySupersLookup.testNegative62  avgt   15  27.859 ± 0.574  ns/op
SecondarySupersLookup.testNegative63  avgt   15  28.333 ± 0.763  ns/op
SecondarySupersLookup.testNegative64  avgt   15  29.325 ± 2.331  ns/op
SecondarySupersLookup.testPositive01  avgt   15   1.759 ± 0.259  ns/op
SecondarySupersLookup.testPositive02  avgt   15   2.664 ± 0.192  ns/op
SecondarySupersLookup.testPositive03  avgt   15   3.156 ± 0.317  ns/op
SecondarySupersLookup.testPositive04  avgt   15   3.544 ± 0.243  ns/op
SecondarySupersLookup.testPositive05  avgt   15   4.038 ± 0.267  ns/op
SecondarySupersLookup.testPositive06  avgt   15   4.350 ± 0.172  ns/op
SecondarySupersLookup.testPositive07  avgt   15   4.754 ± 0.223  ns/op
SecondarySupersLookup.testPositive08  avgt   15   5.183 ± 0.232  ns/op
SecondarySupersLookup.testPositive09  avgt   15   5.676 ± 0.267  ns/op
SecondarySupersLookup.testPositive10  avgt   15   6.022 ± 0.219  ns/op
SecondarySupersLookup.testPositive16  avgt   15   8.647 ± 0.317  ns/op
SecondarySupersLookup.testPositive20  avgt   15  10.668 ± 0.318  ns/op
SecondarySupersLookup.testPositive30  avgt   15  15.355 ± 0.646  ns/op
SecondarySupersLookup.testPositive32  avgt   15  15.958 ± 0.364  ns/op
SecondarySupersLookup.testPositive40  avgt   15  19.227 ± 0.571  ns/op
SecondarySupersLookup.testPositive50  avgt   15  26.029 ± 3.961  ns/op
SecondarySupersLookup.testPositive60  avgt   15  30.197 ± 3.974  ns/op
SecondarySupersLookup.testPositive63  avgt   15  31.863 ± 3.963  ns/op
SecondarySupersLookup.testPositive64  avgt   15  31.466 ± 4.002  ns/op

TypePollution.instanceOfInterfaceSwitchLinearNoSCC          avgt   12  12108.484 ± 144.972  ns/op
TypePollution.instanceOfInterfaceSwitchLinearSCC            avgt   12  10926.627 ±  66.176  ns/op
TypePollution.instanceOfInterfaceSwitchTableNoSCC           avgt   12  11914.055 ± 182.944  ns/op
TypePollution.instanceOfInterfaceSwitchTableSCC             avgt   12  10966.667 ±  68.248  ns/op
TypePollution.parallelInstanceOfInterfaceSwitchLinearNoSCC  avgt   12    243.053 ±   1.857  ms/op
TypePollution.parallelInstanceOfInterfaceSwitchLinearSCC    avgt   12    219.391 ±   0.630  ms/op
TypePollution.parallelInstanceOfInterfaceSwitchTableNoSCC   avgt   12    242.222 ±   0.620  ms/op
TypePollution.parallelInstanceOfInterfaceSwitchTableSCC     avgt   12    218.529 ±   1.236  ms/op



With Patch: 

SecondarySuperCacheHits.test  avgt   15  0.927 ± 0.005  ns/op

SecondarySuperCacheInterContention.test     avgt   15  1.414 ± 0.014  ns/op
SecondarySuperCacheInterContention.test:t1  avgt   15  1.423 ± 0.027  ns/op
SecondarySuperCacheInterContention.test:t2  avgt   15  1.405 ± 0.022  ns/op

SecondarySupersLookup.testNegative00  avgt   15   1.352 ± 0.009  ns/op
SecondarySupersLookup.testNegative01  avgt   15   1.409 ± 0.160  ns/op
SecondarySupersLookup.testNegative02  avgt   15   1.353 ± 0.008  ns/op
SecondarySupersLookup.testNegative03  avgt   15   1.411 ± 0.161  ns/op
SecondarySupersLookup.testNegative04  avgt   15   1.353 ± 0.009  ns/op
SecondarySupersLookup.testNegative05  avgt   15   1.353 ± 0.010  ns/op
SecondarySupersLookup.testNegative06  avgt   15   1.380 ± 0.080  ns/op
SecondarySupersLookup.testNegative07  avgt   15   1.354 ± 0.012  ns/op
SecondarySupersLookup.testNegative08  avgt   15   1.353 ± 0.010  ns/op
SecondarySupersLookup.testNegative09  avgt   15   1.354 ± 0.010  ns/op
SecondarySupersLookup.testNegative10  avgt   15   1.353 ± 0.008  ns/op
SecondarySupersLookup.testNegative16  avgt   15   1.353 ± 0.010  ns/op
SecondarySupersLookup.testNegative20  avgt   15   1.353 ± 0.010  ns/op
SecondarySupersLookup.testNegative30  avgt   15   1.353 ± 0.010  ns/op
SecondarySupersLookup.testNegative32  avgt   15   1.354 ± 0.009  ns/op
SecondarySupersLookup.testNegative40  avgt   15   1.368 ± 0.055  ns/op
SecondarySupersLookup.testNegative50  avgt   15   1.353 ± 0.010  ns/op
SecondarySupersLookup.testNegative55  avgt   15   5.166 ± 0.121  ns/op
SecondarySupersLookup.testNegative56  avgt   15   5.147 ± 0.070  ns/op
SecondarySupersLookup.testNegative57  avgt   15   5.150 ± 0.074  ns/op
SecondarySupersLookup.testNegative58  avgt   15   5.144 ± 0.063  ns/op
SecondarySupersLookup.testNegative59  avgt   15   5.142 ± 0.062  ns/op
SecondarySupersLookup.testNegative60  avgt   15   9.679 ± 0.434  ns/op
SecondarySupersLookup.testNegative61  avgt   15   9.587 ± 0.119  ns/op
SecondarySupersLookup.testNegative62  avgt   15   9.570 ± 0.056  ns/op
SecondarySupersLookup.testNegative63  avgt   15  28.957 ± 2.511  ns/op
SecondarySupersLookup.testNegative64  avgt   15  29.815 ± 3.158  ns/op
SecondarySupersLookup.testPositive01  avgt   15   1.680 ± 0.114  ns/op
SecondarySupersLookup.testPositive02  avgt   15   1.683 ± 0.118  ns/op
SecondarySupersLookup.testPositive03  avgt   15   1.680 ± 0.113  ns/op
SecondarySupersLookup.testPositive04  avgt   15   1.681 ± 0.115  ns/op
SecondarySupersLookup.testPositive05  avgt   15   1.690 ± 0.134  ns/op
SecondarySupersLookup.testPositive06  avgt   15   1.682 ± 0.117  ns/op
SecondarySupersLookup.testPositive07  avgt   15   1.683 ± 0.119  ns/op
SecondarySupersLookup.testPositive08  avgt   15   1.687 ± 0.115  ns/op
SecondarySupersLookup.testPositive09  avgt   15   1.683 ± 0.117  ns/op
SecondarySupersLookup.testPositive10  avgt   15   1.681 ± 0.115  ns/op
SecondarySupersLookup.testPositive16  avgt   15   1.681 ± 0.115  ns/op
SecondarySupersLookup.testPositive20  avgt   15   1.681 ± 0.114  ns/op
SecondarySupersLookup.testPositive30  avgt   15   1.688 ± 0.130  ns/op
SecondarySupersLookup.testPositive32  avgt   15   3.059 ± 0.117  ns/op
SecondarySupersLookup.testPositive40  avgt   15   3.063 ± 0.124  ns/op
SecondarySupersLookup.testPositive50  avgt   15   1.689 ± 0.133  ns/op
SecondarySupersLookup.testPositive60  avgt   15   3.060 ± 0.118  ns/op
SecondarySupersLookup.testPositive63  avgt   15  27.292 ± 0.252  ns/op
SecondarySupersLookup.testPositive64  avgt   15  28.949 ± 3.108  ns/op

TypePollution.instanceOfInterfaceSwitchLinearNoSCC          avgt   12  11872.844 ± 199.007  ns/op
TypePollution.instanceOfInterfaceSwitchLinearSCC            avgt   12  10979.060 ±  41.874  ns/op
TypePollution.instanceOfInterfaceSwitchTableNoSCC           avgt   12   4770.714 ±  10.642  ns/op
TypePollution.instanceOfInterfaceSwitchTableSCC             avgt   12   4840.972 ±  18.488  ns/op
TypePollution.parallelInstanceOfInterfaceSwitchLinearNoSCC  avgt   12    242.041 ±   2.459  ms/op
TypePollution.parallelInstanceOfInterfaceSwitchLinearSCC    avgt   12    218.714 ±   1.016  ms/op
TypePollution.parallelInstanceOfInterfaceSwitchTableNoSCC   avgt   12     93.759 ±   1.082  ms/op
TypePollution.parallelInstanceOfInterfaceSwitchTableSCC     avgt   12     94.644 ±   0.275  ms/op

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

Commit messages:
 - [s390x] secondary super cache port

Changes: https://git.openjdk.org/jdk/pull/19544/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=19544&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8331126
  Stats: 434 lines in 5 files changed: 433 ins; 0 del; 1 mod
  Patch: https://git.openjdk.org/jdk/pull/19544.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/19544/head:pull/19544

PR: https://git.openjdk.org/jdk/pull/19544


More information about the hotspot-dev mailing list