This is the mail archive of the libc-alpha@sourceware.cygnus.com 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]

Re: [Various] libc/1712: Performance loss with glibc-2.1.[23] vs 2.1.1


Andreas Jaeger <aj@suse.de> writes:

> (Pentium III with 500 Mhz):
> 
> The installed glibc 2.1.3:
> $ time ./pr1712 
>  F(n)=  1.44779895E+09  2.72745061E+09  1.94683947E+09
> 
> real    1m2.668s
> user    2m2.200s
> sys     0m0.060s
> 
> Current glibc 2.2 CVS version:
> $ time LD_LIBRARY_PATH=.:math:elf elf/ld-linux.so.2  /tmp/pr/pr1712
>  F(n)=  1.44779895E+09  2.72745061E+09  1.94683947E+09
> 
> real    0m20.489s
> user    0m39.720s
> sys     0m0.060s

OK, I tried it on a RH 6.2 system.  The result on a system somewhat
similar to yours:


$ time ./gs1   
 F(n)=  1.44779895E+09  2.72745061E+09  1.94683947E+09

real    0m18.364s
user    0m18.350s
sys     0m0.010s
$ time elf/ld-linux.so.2 --library-path $PWD:$PWD/math ./gs1
 F(n)=  1.44779895E+09  2.72745061E+09  1.94683947E+09

real    0m18.479s
user    0m18.430s
sys     0m0.020s

The second is with glibc 2.2.  You see, no difference and exactly what
you expect.


If somebody sees something different this most probably means the libc
was compiled incorrectly.  My guess is -fomit-frame-pointer.  This
will kill the stack alignment since suddenly __libc_start_main has a
different stack requirement.

-- 
---------------.      drepper at gnu.org  ,-.   1325 Chesapeake Terrace
Ulrich Drepper  \    ,-------------------'   \  Sunnyvale, CA 94089 USA
Red Hat          `--' drepper at redhat.com   `------------------------

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