This is the mail archive of the
glibc-linux@ricardo.ecn.wfu.edu
mailing list for the glibc project.
Speed under gcc/glibc2 vs gcc/glibc1
- To: glibc-linux at ricardo dot ecn dot wfu dot edu
- Subject: Speed under gcc/glibc2 vs gcc/glibc1
- From: David Ronis <ronis at ronispc dot chem dot mcgill dot ca>
- Date: Thu, 23 Sep 1999 13:11:09 -0400
- CC: gcc at gcc dot gnu dot org
- Reply-To: glibc-linux at ricardo dot ecn dot wfu dot edu
I'm on an i586-linux-2.2.12 box using gcc-2.95.1 as a compiler. I've
just switched over to glibc2 as my primarily library and have been
trying out several recompiled applications. Overall, while threaded
applications seem to work much better, everything else is seems slower (e.g.,
X, fvwm). That doesn't bother me too much; however, one of my work
applications, a number-crunching program written in C has taken a big
performance hit.
Under libc5 a run that takes 202 user-sec now takes 240sec under libc6
(this is reproducible).
Nothing in the codes was changed other than how floating point
exceptions are detected; in the libc5 I set the fpucw to raise
exceptions, while in the libc6 version i (very) periodically test to
see if the exceptions bits are set using fetestexcpt. The latter
should be faster, and in any event, is hardly ever called and there
are no exceptions.
Both programs were compiled with the flags:
-O3 -march=pentium -ffast-math -funroll-loops -fomit-frame-pointer
-fforce-mem -fforce-addr
In addition, almost no I/O is done.
Any suggestions or explanations?
David