[prev in list] [next in list] [prev in thread] [next in thread]
List: openjdk-mlvm-dev
Subject: Another paper on invokedynamic
From: forax () univ-mlv ! fr (=?ISO-8859-1?Q?R=E9mi_Forax?=)
Date: 2010-09-28 8:00:45
Message-ID: 4CA1A0AD.9020600 () univ-mlv ! fr
[Download RAW message or body]
Le 28/09/2010 03:57, Chanwit Kaewkasi a ?crit :
> Hi R?mi,
>
> On Mon, Sep 27, 2010 at 21:30, R?mi Forax<forax at univ-mlv.fr> wrote:
>> Le 27/09/2010 15:20, Christian Thalinger a ?crit :
>>> On Mon, 2010-09-27 at 19:52 +0700, Chanwit Kaewkasi wrote:
>>>> I hope you find it useful somehow and any feedback is very welcome!
>>>>
>>>> http://dl.dropbox.com/u/381580/vmil10_kaewkasi_revised.pdf
>>> Nice read. It would be very interesting why Monte Carlo behaves like
>>> that. Did you look closer at it?
>> I've done the same kind of test, not on SciMark 2.0 but on DaCapo
> Glad to hear that you tried transforming DaCapo as well.
> How did you overcome the limitation that primitives must follow references:
>
> http://mail.openjdk.java.net/pipermail/mlvm-dev/2010-July/001875.html
>
> or probably I missed somethings in the recent builds?
I don't know for recent build. When I've tested the reference
implementation (hotspot),
I've disabled transformation if I detect a method type that will be not
handled by the RI.
Otherwise if you test DaCapo-jython there is no such problematic
signature in it.
I've initally develop the weaver as a non regression test for the backport,
and with the backport there is no such problem.
>> and without rewriting all primitive operators (BTW, I haven't understand
>> why you have re-written it manually).
> It's getting fully automatic for now ;-)
>
>> The results was far better but I suppose it's due to the fact that I haven't
>> woven operators.
>>
>> A remark, you don't need to store all method handles in an array,
>> the one you initialize in the static block of each class.
>>
>> Instead of having one boostrap by callsite you can factor them to have one
>> bootstrap by invocation bytecode.
> This looks interesting but it seems to be my limitation that I cannot
> fully understand you suggestions at the moment. Maybe I'll try what
> you said and be back to you later. Thanks a lot.
You can have only 4 bootstrap methods, one by invoke* instruction
> -Chanwit
R?mi
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic