harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From acoli...@apache.org
Subject Re: [arch] Interpreter vs. JIT for Harmony VM
Date Wed, 21 Sep 2005 10:47:36 GMT
Steve Shih-wei Liao wrote:
> Do we need an interpreter or a fast code generating, zero optimizing JIT? I 
> can think of advantages to each approach. Assuming a C/C++ implementation, a 
> traditional interpreter is easy to port to a new architecture and we can 
> populate Execution Engines (EE) for different platforms rather easily. On 
> the other hand, a fast code-generating JIT can call runtime helpers and 
> native methods without additional glue code whereas an interpreter has to 
> have special glue code to make it work in a JIT environment. Needless to 
> say, if a method is called more than once, the one time cost of JITing 
> without optimization may be lower than the cost of running the interpreter 
> loop.
> Our experience is that a fast, zero optimizing JIT can yield low-enough 
> response time. So, I think at least Harmony has the option of having a 
> decent system without an interpreter. Thoughts?
>  Steve Liao, Intel Managed Runtime Division
> 

No doubt, but portability is also a concern and writing a portable JIT 
seems more difficult.

Although it is compiler dependent (gcc) have you looked at the Sable 
approach:

http://www.sable.mcgill.ca/publications/thesis/phd-gagnon/sable-thesis-2002-phd-gagnon.pdf

which kind of combines the two?  It is possible that this alleviates 
your concern with the tradeoff of compiler dependence (though it would 
be nice if we could do this on Intel compiler so that we can run faster 
on Itanium).

-Andy


Mime
View raw message