[9] RFR (M): 8057967: CallSite dependency tracking scales devastatingly poorly

Aleksey Shipilev aleksey.shipilev at oracle.com
Thu Apr 2 16:10:53 UTC 2015


On 04/01/2015 11:56 PM, Vladimir Ivanov wrote:
> http://cr.openjdk.java.net/~vlivanov/8057967/webrev.00/hotspot/
> http://cr.openjdk.java.net/~vlivanov/8057967/webrev.00/jdk/
> https://bugs.openjdk.java.net/browse/JDK-8057967

Glad to see this finally addressed, thanks!

I did not look through the code changes, but ran Octane on my
configuration. As expected, Typescript had improved substantially. Other
benchmarks are not affected much. This in line with the performance
analysis done for the original bug report.

Baseline:

Benchmark          Mode  Cnt        Score        Error  Units
Box2D.test           ss   20     4454.677 ±    345.807  ms/op
CodeLoad.test        ss   20     4784.299 ±    370.658  ms/op
Crypto.test          ss   20      878.395 ±     87.918  ms/op
DeltaBlue.test       ss   20      502.182 ±     52.362  ms/op
EarleyBoyer.test     ss   20     2250.508 ±    273.924  ms/op
Gbemu.test           ss   20     5893.102 ±    656.036  ms/op
Mandreel.test        ss   20     9323.484 ±    825.801  ms/op
NavierStokes.test    ss   20      657.608 ±     41.212  ms/op
PdfJS.test           ss   20     3829.534 ±    353.702  ms/op
Raytrace.test        ss   20     1202.826 ±    166.795  ms/op
Regexp.test          ss   20      156.782 ±     20.992  ms/op
Richards.test        ss   20      324.256 ±     35.874  ms/op
Splay.test           ss   20      179.660 ±     34.120  ms/op
Typescript.test      ss   20       40.537 ±      2.457   s/op

Patched:

Benchmark          Mode  Cnt        Score        Error  Units
Box2D.test           ss   20     4306.198 ±    376.030  ms/op
CodeLoad.test        ss   20     4881.635 ±    395.585  ms/op
Crypto.test          ss   20      823.551 ±    106.679  ms/op
DeltaBlue.test       ss   20      490.557 ±     41.705  ms/op
EarleyBoyer.test     ss   20     2299.763 ±    270.961  ms/op
Gbemu.test           ss   20     5612.868 ±    414.052  ms/op
Mandreel.test        ss   20     8616.735 ±    825.813  ms/op
NavierStokes.test    ss   20      640.722 ±     28.035  ms/op
PdfJS.test           ss   20     4139.396 ±    373.580  ms/op
Raytrace.test        ss   20     1227.632 ±    151.088  ms/op
Regexp.test          ss   20      169.246 ±     34.055  ms/op
Richards.test        ss   20      331.824 ±     32.706  ms/op
Splay.test           ss   20      168.479 ±     23.512  ms/op
Typescript.test      ss   20       31.181 ±      1.790   s/op

The offending profile branch (Universe::flush_dependents_on) is also
gone, which explains the performance improvement.

Thanks,
-Aleksey.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20150402/641dfda4/signature.asc>


More information about the hotspot-compiler-dev mailing list