This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Bootstrap times on mainline are getting worse
- From: Roger Sayle <roger at eyesopen dot com>
- To: Pop Sebastian <pop at gauvain dot u-strasbg dot fr>
- Cc: Diego Novillo <dnovillo at redhat dot com>, <gcc at gcc dot gnu dot org>
- Date: Sat, 19 Oct 2002 08:24:35 -0600 (MDT)
- Subject: Re: Bootstrap times on mainline are getting worse
Hi Pop,
> > +2002-10-04 Roger Sayle <roger@eyesopen.com>
> > +
> > + * config/i386/i386.h (processor_costs): Add new fields fadd,
> > + fmul, fdiv, fabs, fchs and fsqrt to costs structure.
> > + (RTX_COSTS): Use these fields to determine the RTX costs
> > + of floating point addition/subtraction, multiplication,
> > + division, fabs, negation and square root respectively.
> > + * config/i386/i386.c (size_cost): Provide instruction sizes
> > + for these new fields.
> > + (i386_cost, i486_cost, pentium_cost, pentiumpro_cost,
> > + k6_cost, athlon_cost, pentium4_cost): Provide typical cycle
> > + counts for these new fields for all x86 processor variants.
> > +
> >
> A 'time make bootstrap' on version "2002-10-03" gives:
>
> real 57m38.632s
> user 51m20.200s
> sys 4m55.500s
>
> With this patch I get:
>
> real 58m16.766s
> user 51m14.720s
> sys 5m0.850s
Thanks for ruling out this patch as the cause of the performance
regression. It reduces the CPU time by 6 seconds, and the change
in wall clock times, 3496 seconds vs. 3458 seconds, is 1% and far
less than the 6% regression we're looking for. I'm guessing both
these timings are within the natural fluctuation (I won't take
credit for the 6s :)
I initially misread your posting as implying this patch was to
blame, and spent several minutes trying to work out how calling
FLOAT_TYPE_P (GET_MODE (X)) on a critical path would cause a
four minute slow down in bootstrap times. GCC doesn't use host
floating point, so I came to the obvious conclussion that
RTX_COSTS must account for >5% of GCC's CPU time, but just
doesn't show up in profile. Swift reality check and "Reductio
ad absurdum".
Many thanks for investigating this. One down, a few more to go.
Roger
--