This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Drop frequencies from basic blocks


> On 2017.11.03 at 16:48 +0100, Jan Hubicka wrote:
> > this is updated patch which I have comitted after profiledbootstrapping x86-64
> 
> Unfortunately, compiling tramp3d-v4.cpp is 6-7% slower after this patch.
> This happens with an LTO/PGO bootstrapped gcc using --enable-checking=release.

our periodic testers has also picked up the change and there is no compile time
regression reported for tramp3d.
https://gcc.opensuse.org/gcc-old/c++bench-czerny/tramp3d/
so I would conclude that it is regression in LTO+PGO bootstrap.  I am fixing one checking
bug that may cause it (where we mix local and global profiles) so perhaps it will go away
afterwards.

The patch has changed a lot of details because I had to merge FDO and non-FDO paths
everywhere and also decide on code that seemed buggy and did not translate fluently
into new API.

Looking at today results there are no significant perofrmance implications of this patch
on x86-64 nor Itanium but there are significant code size reductions which I am not quite
sure where they come from
https://gcc.opensuse.org/gcc-old/c++bench-czerny/

My overall plan is the following
 1) Fix checking enabled fallout of the cfg patch
 2) finish conversion by dropping frequencies from callgraph
 3) audit code for bugs and profile updating insanities.
    Situation is not bad - we have fewer insanties than GCC 7 on tramp3d -Ofast
    build but it is worse than before conversion, so I may have dragged in some bugs
    (again numbers are not fully comparable)
 4) do full retunning of inliner metrics and FDO params in stage 3.
    This stage1 we got a lot of changes that affects IPA metrics - the conversion
    to sreals, context sensitive time estimates, new profile maintenance.

    Also FDO metrics will hopefully become more realistic as we had fixed many instances
    of dropped proifles.

So hope to get those 7% back for sure :)  I will also try to oprofile to see if I spot
something obvious if today fixes will not cover this regression.

Honza


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]