This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug regression/33928] 33% performance slowdown from 4.2.2 to 4.3.0 in floating-point code with computed gotos



------- Comment #7 from lucier at math dot purdue dot edu  2007-10-28 16:05 -------
time with -O2 instead of -O1:

with 4.2.2:

(time (direct-fft-recursive-4 a table))
    426 ms real time
    426 ms cpu time (425 user, 1 system)
    no collections
    64 bytes allocated
    no minor faults
    no major faults

with 4.3.0:

(time (direct-fft-recursive-4 a table))
    433 ms real time
    433 ms cpu time (433 user, 0 system)
    no collections
    64 bytes allocated
    no minor faults
    no major faults

With -O1 -fno-ivopts:

with 4.2.2:

(time (direct-fft-recursive-4 a table))
    374 ms real time
    374 ms cpu time (374 user, 0 system)
    no collections
    64 bytes allocated
    no minor faults
    no major faults

with 4.3.0:

(time (direct-fft-recursive-4 a table))
    443 ms real time
    443 ms cpu time (443 user, 0 system)
    no collections
    64 bytes allocated
    1 minor fault
    no major faults

Why -fno-strict-aliasing: I don't need it for this particular routine, but in
the rest of the file is part of a bignum library that accesses the bignum
digits as arrays of either 8-, 32-, or 64-bit unsigned ints, and it hasn't been
rewritten to use unions of arrays.  (This is part of the runtime system of a
Scheme implementation, and there are other places that just cast pointers to
achieve low-level things.)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33928


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