RFR: Direct LambdaMetaFactory invocation from CallSite significantly improves lambda linkage performance

Aleksey Shipilev aleksey.shipilev at oracle.com
Wed Sep 11 09:39:36 PDT 2013


Seems like a good trick.

On 09/11/2013 08:23 PM, Sergey Kuksenko wrote:
> http://cr.openjdk.java.net/~skuksenko/jsr335/8024630/webrev.00/

* webrev metadata: "invokation" -> "invocation"

* Why $caller is MethodHandles.Lookup now? Is it known to have that type?

* I would put the entire LMF.metafactory call inside the new method.
That way, instanceof checks are right before the (otherwise potentially
unsafe) casts.

> The modification gives +10% - +35% to lambda linkage performance
> (depends on amount of lambdas).

Any JSR292/Nashorn benchmarks to prove it does not degrade the "usual"
bootstrap scenarios? I understand most of the performance is dominated
by already-linked sites, but still.

-Aleksey.




More information about the hotspot-compiler-dev mailing list