On Fri, Aug 12, 2011 at 4:44 AM, Christian Thalinger <christian.thalin...@oracle.com> wrote: > Well, it's the good old: > > @ 95 java.lang.invoke.MethodHandle::invokeExact (45 bytes) size > > DesiredMethodLimit > > This seems to be the last recursive call that doesn't get inlined. Setting > MaxRecursiveInlineLevel=0 makes it go faster. I finally filed (a separate > bug to keep this a single change): > > 7078382: JSR 292: don't count method handle adapters against inlining budgets > > The proposed fix is: > > http://cr.openjdk.java.net/~twisti/7078382/ > > The numbers are now like they should be:
That's great! I have confirmed the perf improvement here as well. The new numbers are looking *much* better now. There's still a bit of overhead from factoring the original fib into more methods, but it's getting smaller :) normal fib 9227465 1.153000 0.000000 1.153000 ( 1.153000) fib with constants 9227465 2.167000 0.000000 2.167000 ( 2.167000) fib with additional calls 9227465 1.275000 0.000000 1.275000 ( 1.275000) fib with constants and additional calls 9227465 2.442000 0.000000 2.442000 ( 2.442000) Compare to non-indy: normal fib 9227465 1.995000 0.000000 1.995000 ( 1.995000) fib with constants 9227465 3.637000 0.000000 3.637000 ( 3.637000) fib with additional calls 9227465 3.279000 0.000000 3.279000 ( 3.279000) fib with constants and additional calls 9227465 4.352000 0.000000 4.352000 ( 4.352000) I will proceed with more indy updates! - Charlie _______________________________________________ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev