Rana,
Sorry I spent whole day investigating critical monenter helper's bug
(inlined version), so had no time to read an answer.

The answer is yes. Jitrino.OPT does static profile estimation, see
jitrino/src/dynopt/StaticProfiler.cpp file.
It's code is based on "Static Branch Frequency and Program Profile Analysis
/ Wu, Laurus, IEEE/ACM 1994" article.
Static profiler pass is also used in dynamic profile mode to smooth or fix
edge profile when some optimization transforms IR


On 12/6/06, Rana Dasgupta <[EMAIL PROTECTED]> wrote:

Does jitrino make any static prediction about relative probability of
branches ( eg., fall through branch more probable ) for code that has no
associated profile data?

On 12/6/06, Mikhail Fursov <[EMAIL PROTECTED]> wrote:
>
> Today helpers are inlined only by SD2_OPT JIT. We can add helpers
inlining
> to SD1_OPT too, but helpers classes are initialized only from VMStart
> class
> - so there will be ~1k methods compiled by SD1_OPT without helpers
inlined
> and we will have a problem to differentiate them.
>
> On 06 Dec 2006 16:52:12 +0600, Egor Pasko <[EMAIL PROTECTED]> wrote:
> >
> > On the 0x237 day of Apache Harmony Mikhail Fursov wrote:
> > > On 06 Dec 2006 13:13:51 +0600, Egor Pasko <[EMAIL PROTECTED]>
> wrote:
> > > >
> > > > Jitrino.OPT relies on edge profile. The most probable edges are
> > > > fallthrough.
> > >
> > > The only problem  here is that vmhelpers are never recompiled
> and  their
> > IR
> > > is estimated with heuristic based profiler. So, as JIT developer,
I'm
> > not
> > > sure if a branch in Java code will be layouted as fallthrough or as
> > jump.
> >
> > That's interesting! I see no serious reasons that can stop us from
> > profiling VM helpers. Just need the right .emconf. Or am I missing
> > something?
> >
> > --
> > Egor Pasko
> >
> >
>
>
> --
> Mikhail Fursov
>
>




--
Mikhail Fursov

Reply via email to