speed of invokeExact

Christian Thalinger christian.thalinger at oracle.com
Tue May 7 10:31:04 PDT 2013


On May 7, 2013, at 8:04 AM, Jochen Theodorou <blackdrag at gmx.org> wrote:

> Hi,
> 
> I am currently investigating here some performance issues and I may have 
> found a culprint here - invokeExact. My case is one where method caching 
> fails and I will have to do an invokeExact from Java - meaning without 
> the invokedynamic bytecode and with a non constant method handle. I am 
> aware of that being a non optimized path in indy, but it does not really 
> look fast to me at all. Maybe compared to Reflection, but to a runtime 
> generated class for the method invocation, it seems to be very very 
> slow- at least on my "64-Bit Server VM (build 25.0-b14, mixed mode)" here.

Do you have any numbers?  The problem is that if the MH is not constant we can't do any inlining and it will be an out-of-line call (with a trampoline in between).  Is your DMH a static or virtual?

-- Chris

> 
> Now.. is that commonly known? Did I see wrong? Is there a way to improve 
> the speed (it is a DirectMethodHandle I am invoking already)?
> 
> bye Jochen
> _______________________________________________
> mlvm-dev mailing list
> mlvm-dev at openjdk.java.net
> http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev



More information about the mlvm-dev mailing list