4 ms·
Is there any language/environment that tries to combine the two? I.e JIT for a few iterations and then "settling" on the best optimization and caching it?
by brimstedt 12y ago
Is there any language/environment that tries to combine the two? I.e JIT for a few iterations and then "settling" on the best optimization and caching it?
- pron 12y agoI think Java is exploring that for version 9, but this can only improve startup times. When you consider the entire lifetime of the program, JIT compilation is negligible, so there's no point in caching the results (other than to improve startup time). Also, the JVM never (AFAIK) "settles" on a specific machine instructions. It will always be on the lookout for optimizations that are better adapted to the current execution profile.
- YZF 12y agoThere's a technique called Profile Guided Optimization which is a little like that.
- twic 12y agoI think you might be talking about tiered compilation, in which case, yes: http://www.azulsystems.com/blog/cliff/2010-07-16-tiered-compilation http://www.azulsystems.com/blog/cliff/2010-07-16-tiered-comp... The Azul JVM has been doing this for some time. The Sun/Oracle/OpenJDK JVM started doing it in JDK 7. I think IBM's J9 JVM has been doing it for some time too. I'm sure Microsoft's CLR VM does it, they're a smart bunch.