How high are he memory costs of polymorphic inline caches?

Julien Ponge julien at
Tue Aug 19 10:12:13 UTC 2014


> Apart from Nashorn, JRuby and Groovy, are there other *widely* used 
> dynamic language implementations known to run on the JVM and using indy 
> and PICs?

Golo [1] is using invokedynamic all the way, and we have PICs for method
dispatches. We use a GWT tree up to a depth of 5, then degrade to a
WeakHashMap + invoker when a call site gets megamorphic.

I can't really comment on memory to be honest as we focus primarily on
raw performance. LambdaForm tend to pile up, which I don't expect to be
worse than what you would get with an elaborated bytecode JIT-ing
runtime (Nashorn, JRuby). In my experience LambdaForm are more of an
annoyance in stack traces :-)


- Julien

More information about the mlvm-dev mailing list