This is the mail archive of the glibc-linux@ricardo.ecn.wfu.edu mailing list for the glibc project.


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

Speed under gcc/glibc2 vs gcc/glibc1



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

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