This is the mail archive of the gcc@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]

Re: Compilation getting slower


>>>>> Richard Stallman writes:

 > This data, from Dan Pascu, suggests that GCC is steadily getting
 > gradually slower as regards compile time.  A 10% slowdown since a few
 > versions ago is not a disaster, but it is significant.

 > So I think people should know about this, and perhaps investigate
 > what causes the slowdown.  Maybe it is avoidable.

[...]

 > The tests were done like that. Except the one (only) that was with
 > libc5, all were done with glibc2.1 and various gcc versions on the same
 > Debian 2.2 system (i.e. only the compiler was changed).
 > The didtribution I noted in the table for each case was from where the
 > compiler (binary) was took. But all of the compilers were installed on
 > the same Debian 2.2 system.
 > I don't think that the fact I took a binary from RedHat and installed
 > it on Debian makes much difference. I also compiled a egcs1.1.2 and get
 > the same results as the egcs1.1.2 I used from various distributions.
 > There were only very small differences between the same version of the
 > compiler (took from various sources, or compiled by myself) as columns
 > 2 and 3 show, but always there was a big increase in the compile time
 > when the version of the compiler changed.

 > In fact the conclusion I came about was not because I made the test,
 > but because I saw that the compile time raised about 1.5 times after
 > installing new compiler versions on the same system. That made me make
 > this test, just to check what was the increase in compile time.

 > Here is the table again, I hope that now is much clearer.

 > compiler | egcs1.1.2 | egcs1.1.2  | egcs1.1.2  | pgcc1.1.3  | gcc-2.95
 >  flags   | & libc5   | & glibc2.1 | & glibc2.1 | & glibc2.1 | & glibc2.1
 >          | Slack4.0  | Debian2.2  | RedHat6.0  | Enoch      | Debian2.2
 > -------------------------------------------------------------------------
 > none     |   1m44s   |   2m07s    |   2m03s    |   2m09s    |   2m11s
 > -------------------------------------------------------------------------
 > -g       |   2m05s   |   2m28s    |   2m26s    |   2m33s    |   2m34s
 > -------------------------------------------------------------------------
 > -O       |   2m02s   |   2m41s    |   2m36s    |   2m46s    |   3m01s
 > -------------------------------------------------------------------------
 > -g -O    |   2m21s   |   3m01s    |   2m56s    |   3m06s    |   3m22s
 > -------------------------------------------------------------------------
 > -O2      |   2m26s   |   3m07s    |   3m01s    |   3m16s    |   3m43s
 > -------------------------------------------------------------------------
 > -g -O2   |   2m46s   |   3m28s    |   3m21s    |   3m36s    |   4m04s
 > -------------------------------------------------------------------------
 > -O6      |   2m35s   |   3m15s    |   3m08s    |   3m36s    |   3m52s
 > -------------------------------------------------------------------------
 > -g -O6   |   2m55s   |   3m35s    |   3m28s    |   3m56s    |   4m12s
 > -------------------------------------------------------------------------

One problem going from libc5 to glibc 2.1 is that glibc 2.1 comes with
a number of inline functions and macros for the string functions.  Can
you try the glibc 2.1 tests again with -D__NO_STRING_INLINES?

Thanks,
Andreas
-- 
 Andreas Jaeger   aj@arthur.rhein-neckar.de    jaeger@informatik.uni-kl.de
  for pgp-key finger ajaeger@aixd1.rhrk.uni-kl.de

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