This is the mail archive of the
libc-alpha@sourceware.cygnus.com
mailing list for the glibc project.
Re: [Various] libc/1712: Performance loss with glibc-2.1.[23] vs 2.1.1
- To: libc-alpha Mailinglist <libc-alpha at sourceware dot cygnus dot com>
- Subject: Re: [Various] libc/1712: Performance loss with glibc-2.1.[23] vs 2.1.1
- From: Ulrich Drepper <drepper at redhat dot com>
- Date: 30 Apr 2000 09:57:38 -0700
- Cc: Milan Hodoscek <milan at ala dot cmm dot ki dot si>
- References: <u8r9bn4xa5.fsf@gromit.rhein-neckar.de>
- Reply-To: drepper at cygnus dot com (Ulrich Drepper)
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 `------------------------