Le 06/08/2009 00:42, John Rose a écrit :
On Aug 5, 2009, at 8:43 AM, Rémi Forax wrote:

The next room of improvement is to directly put the bytecode weaver
of the backport at the end of the JRuby ASM compiler.
I hope this will reduce the startup time.

(Jumping into the middle...)

Sounds like an ASM compatibility mode.  Does ASM have an option to
automagically rewrite ldc of CONSTANT_Class into the old idiom
(synthetic static class$ field, etc.)?

As far as I know, No !

If so, can that pattern
stretch another order of magnitude to support some or all of the
backport logic?

Ok, hacking JRuby, I was able to use the backport without
the agent, but that means also without the optimizer.
Basically, the code run 5 times slower with -server and
7 times slower with -client i.e not that far from the numbers
of my first report :(

John, as you see the backport needs the agent to be
able to recompile at runtime callsite target to have decent perf
so providing only a bytecode transformer is not that useful.

I have seen some small rooms of improvement in the JRuby code
(apart from replacing  DynamicMethod by MethodHandle which is
what must be done but which is also in my opinion a more than one week job :)

I will send a separate email tomorrow, It's too late now.

-- John

cheers,
Rémi

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

Reply via email to