performance of OO dispatch in inner loops

David Teller David.Teller at
Tue Mar 25 05:48:10 PDT 2008

On Fri, 2008-03-21 at 13:45 -0700, Brendan Eich wrote:
> You really should read the papers, and Andreas Gal's blog. 

Probably. I'm not an expert in [dynamic] optimisations, my line of work
is mostly related to static analysis. Do you suggest any specific papers
other than the blog ?

> Runtime  
> types are only one of many kinds of information available to runtime  
> optimizers. Tracing loops allows hoisting and even allocation  
> elimination, using escape analysis. Common sub-expression elimination  
> can consider trace-invariant expressions. One can guard all sorts of  
> on-trace assumptions and compensate to the interpretr, re-tracing  
> other hot paths. It's not just about types.

I'm quite aware that there's more to optimisation than removing dynamic
type checks & consolidating dynamic method dispatch. I was just
answering that particular point.

> Having written this, there are open issues with tree folding to avoid  
> proliferation of paths in the trace tree. Again, see http:// 
> for more.

Thanks for the reference.


David Teller
 Security of Distributed Systems
 Angry researcher: French Universities need reforms, but the LRU act
brings liquidations. 

More information about the Es4-discuss mailing list