On Feb 1, 2012, at 9:34 AM, Rémi Forax wrote:

> On 02/01/2012 01:52 AM, Mark Roos wrote:
>> I just loaded about 250K lines of Smalltalk code into my jvm 
>> implementation so now I can start
>> some real benchmarks using our application.  All of this was done on a 
>> Mac.
>> 
>> My first try was a object load which takes about 20 files and creates 
>> a pretty complex object set.  This
>> takes 100 seconds in ST and using the initial jdk7 release I also get 
>> 100 seconds.  Not bad.  But
>> I see that one of the major slowdowns is in my use of boxed integers 
>> vs STs use of Fixnums.  So
>> I did some more detailed experiments.
>> 
>> Using this code snippet which creates and drops about 2 million 
>> Integers which ST does in about 10ms.
>> 
>>    | bytes pos sum |
>>    bytes := ByteArray new:1000000.
>>    sum := 0.
>>    pos := 1.
>>    [pos <= 1000000]    whileTrue:[
>>        sum := bytes at:pos.
>>        pos := pos + 1].
>>    ^sum
>> 
>> For the initial JDK7 I get 400ms,  moving to jdk8 b20 it drops to 
>> 117ms ( very nice).
>> I then converted some constructor lookups to statics to get to 66ms.
>> Then the obvious move to make an integer cache for which I used the 
>> jTalk range of -2000 to 4000 gave 30ms
>> And finally ( to handle the index integer) I created a MutableInteger 
>> which dropped me to 5ms.
>> 
>> So 2X better than the ST I started with.
>> 
>> But then I upgraded to jsk8b23 and now the best I see is 16ms.  It 
>> also seems like the jit sometimes
>> compiles and sometimes not even using the same startup sequence. 
>> Bleeding edge I would guess.
>> 
>> But for the final test I used jdk7u4 and my load is 73 seconds.  Not 
>> as good as the best jdk8b20 ( 60 seconds)
>> but faster than native Smalltalk
> 
> Hi Mark, I believe tiered compilation was enable by default between 
> jdk8b20 and jdk8b23.
> I have seen some weird compilation pattern too but no time to really 
> investigate.

I was thinking about the same.  Try -XX:-TieredCompilation to know for sure.

-- Chris

> 
>> 
>> looking good
>> mark
> 
> Rémi
> 
> _______________________________________________
> mlvm-dev mailing list
> mlvm-dev@openjdk.java.net
> http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev

_______________________________________________
mlvm-dev mailing list
mlvm-dev@openjdk.java.net
http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev

Reply via email to