pro64-support
[Top] [All Lists]

RE: several times of instrumentation? (sorry for the previous ema il wi

To: "'Peng Zhao'" <pengzhao@xxxxxxxxxxxxxx>
Subject: RE: several times of instrumentation? (sorry for the previous ema il without title)
From: "Chan, Sun C" <sun.c.chan@xxxxxxxxx>
Date: Tue, 29 May 2001 17:44:06 -0700
Cc: sgi <pro64-support@xxxxxxxxxxx>
Sender: owner-pro64-support@xxxxxxxxxxx

> -----Original Message-----
> From: Peng Zhao [mailto:pengzhao@xxxxxxxxxxxxxx]
> Sent: Tuesday, May 29, 2001 1:06 PM
> To: Chan, Sun C
> Cc: sgi
> ...
> > In fact, the correct phrase should be Pro64 "can"  instrument
> > during the phases you mentioned (not cg though). In 
> reality, it does 
> > that before VHO. The design is so that you can do it in any phase.
>                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>               So, there are still possibilities that the feedback
> information is read in the later phase than VHO. Am I right? Does this
> implies that the instrumentation conducted in the first 
> compilation must
> happen at the same phase of the annotation in the second compilation?

Yes to both questions.

> And the instrumentation or annotation can only take place 
> once during the
> compilation, although Pro64 can do it in several phases. Right?

Yes

> 
>       You mean that the instrumentation or annotation is only 
>  conducted
> before VHO even when various optimization flags are switched
> on(i.e. other calls in later phases to annotation are never invoked)? 

As far as I know, that's case.

> 
> 
> > 
> > > 
> > >   E.g, I want to do partial inlinining in the backend 
> > > phase. And my
> > > initial plan of doing it is just after the first annotation 
> > > (there still
> > > needs some more investigation for the feasibility, of course your
> > > suggestions are quite welcomed). After the partial
> > 
> > You meant during IPA? 
> 
>    No. in the VHO phase ( just before the lowering from VH whirl to H
> whirl). It is after the annotation.

If you do this right after VHO, you are losing the benefit of Preopt
which in general is designed to normalize/cleanup a lot of code hence one
can make a better inlining decision among other benefits. 
The reason I asked if you are doing partial inlining during IPA is that
inlining is done at IPA time. If you have a partial inlining phase after
VHO, how does that interact with the inlining part of IPA? Also, things
like const. prop in IPA helps cleaning up code for better inlining/partial
inlining decisions. Incidentally, Preopt is ran before IPA.

> 
> > 
> > > inlining, the caller and callee change definitely. Is there 
> > > any problem
> > > that later annotation? 
> > 
> > The question is how you update the info after partial 
> inlining. Since its 
> > a form of cloning, you need to make some guestimation. The 
> feedback is
> > designed for being able to verify before and after each 
> optimization and
> > assert that the information is still "consistent". The 
> update heuristic
> > is strictly up to the optimization phase since each has its 
> own peculiar
> > requirement and hence different ways to deal with it. Pro64 can also
> > do some minor patching when annotation is inconsistent. 
> When it cannot
> > patch,
> > it will invalidate a portion of the information.
> > > I guess the problem exists for other optimizations.In 
> current Pro64, 
> > > how the similar problems are addressed?
> > > 
> > >   Thanks.
> >  
> > 
> 
> -- 
>               Regards
> 
>                                         Peng
>   Peng Zhao   pengzhao@xxxxxxxxxxxxxx   
>   http://www.cs.ualberta.ca/~pengzhao   
>   TEL (Lab): (780)492-3725                  Lab:  CSC251
> 
> 
> 


<Prev in Thread] Current Thread [Next in Thread>
  • RE: several times of instrumentation? (sorry for the previous ema il without title), Chan, Sun C <=