ArrayList loop regression ?
Rémi Forax
forax at univ-mlv.fr
Sun Feb 27 10:16:33 PST 2011
A student sent me a micro-benchmark that shows a regression in the way
hotspot compiles indexed loop on linux x64.
Basically jdk7:
java version "1.7.0-ea"
Java(TM) SE Runtime Environment (build 1.7.0-ea-b129)
Java HotSpot(TM) 64-Bit Server VM (build 21.0-b01, mixed mode)
is really slow compared to jdk6:
java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b06)
Java HotSpot(TM) 64-Bit Server VM (build 17.0-b16, mixed mode)
[forax at localhost src]$ java -server -Xbatch ArrayListIteration2
495000000 23562949
495000000 28475066
495000000 10691187
495000000 17820582
495000000 17910601
495000000 17231943
495000000 17834819
495000000 17444713
495000000 17831591
495000000 17880947
495000000 17405874
495000000 17823323
495000000 17254145
495000000 17815812
495000000 17534777
495000000 17589371
495000000 17830668
495000000 17389534
495000000 17884535
495000000 17484575
[forax at localhost src]$ /usr/jdk/jdk1.6.0_21/bin/java -server -Xbatch
ArrayListIteration2
495000000 28299043
495000000 23543527
495000000 11718848
495000000 12008201
495000000 12821666
495000000 11661011
495000000 12502804
495000000 11763580
495000000 11663503
495000000 12620776
495000000 11649228
495000000 12593051
495000000 11805152
495000000 11702461
495000000 12368391
495000000 11615139
495000000 12511620
495000000 11726843
495000000 11796660
495000000 12379443
I've also tested with an older 32bit VM that doesn't show any regression
on 32bits :
java version "1.7.0-ea"
Java(TM) SE Runtime Environment (build 1.7.0-ea-b123)
Java HotSpot(TM) Server VM (build 20.0-b04, mixed mode)
Rémi
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: ArrayListIteration2.java
Url: http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20110227/61815d26/attachment.ksh
More information about the hotspot-compiler-dev
mailing list