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


>>>>> Ulrich Drepper writes:

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

I investigated further: 
I compiled glibc 2.1.3 with gcc 2.95 and gcc 2.96, both with:
CFLAGS= -momit-leaf-frame-pointer -pipe -O3 -Wall -Winline -Wstrict-prototypes -Wwrite-strings -g -mpentiumpro -Wno-format -fstrict-aliasing

with 2.95 the runtime is about 1 minute, with 2.96 about 20s.  I guess
this settles the issue.  It's some kind of compiler bug which leads to
misaligned doubles on the stack and therefore penalizes ix86
processors.

I'm closing the report soonish, there's AFAIK nothing we can do in
glibc to avoid this.

Andreas
-- 
 Andreas Jaeger
  SuSE Labs aj@suse.de
   private aj@arthur.rhein-neckar.de

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