performance of OO dispatch in inner loops

David Teller David.Teller at univ-orleans.fr
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:// 
> andreasgal.com/ for more.

Thanks for the reference.

Cheers,
 David

-- 
David Teller
 Security of Distributed Systems
  http://www.univ-orleans.fr/lifo/Members/David.Teller
 Angry researcher: French Universities need reforms, but the LRU act
brings liquidations. 




More information about the Es4-discuss mailing list