public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/53967] New: GCC produces slow code for convolution algorithm with -mfpmath=sse (the AMD_64 default)
@ 2012-07-14 20:52 bfriesen at simple dot dallas.tx.us
  2012-07-14 20:56 ` [Bug c/53967] " bfriesen at simple dot dallas.tx.us
                   ` (18 more replies)
  0 siblings, 19 replies; 20+ messages in thread
From: bfriesen at simple dot dallas.tx.us @ 2012-07-14 20:52 UTC (permalink / raw)
  To: gcc-bugs

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

             Bug #: 53967
           Summary: GCC produces slow code for convolution algorithm with
                    -mfpmath=sse (the AMD_64 default)
    Classification: Unclassified
           Product: gcc
           Version: 4.6.2
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: bfriesen@simple.dallas.tx.us


Created attachment 27792
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27792
Convolution example C file, pre-processed version, build log, assembler output

The classic convolution algorithm (as implemented in GraphicsMagick) is
observed to run 2X slower with -mfpmath=sse than with -mfpmath=387. 
Unfortunately -mfpmath=sse is the default for -m64 builds on AMD_64 so this has
large impact for users.

Even with -mfpmath=387 other compilers (LLVM, Open64, and Oracle Studio)
produce faster code by default so some of these compilers are producing up to
3X better overall run-time performance and all of them are at least 2X faster
than the GCC default for x86-64.

This issue has been verified under Solaris 10, OpenIndiana, and Ubuntu Linux on
Opteron and several modern Xeon CPUs.

Please note that AMD Opteron 6200 family CPUs were not observed to suffer from
this issue.


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2012-08-12 15:41 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-07-14 20:52 [Bug c/53967] New: GCC produces slow code for convolution algorithm with -mfpmath=sse (the AMD_64 default) bfriesen at simple dot dallas.tx.us
2012-07-14 20:56 ` [Bug c/53967] " bfriesen at simple dot dallas.tx.us
2012-07-14 20:57 ` bfriesen at simple dot dallas.tx.us
2012-07-14 20:58 ` bfriesen at simple dot dallas.tx.us
2012-07-14 20:59 ` bfriesen at simple dot dallas.tx.us
2012-07-14 21:06 ` [Bug target/53967] " bfriesen at simple dot dallas.tx.us
2012-07-14 21:42 ` bfriesen at simple dot dallas.tx.us
2012-07-16 12:42 ` rguenth at gcc dot gnu.org
2012-07-16 14:17 ` bfriesen at simple dot dallas.tx.us
2012-07-16 14:57 ` rguenth at gcc dot gnu.org
2012-07-16 15:35 ` bfriesen at simple dot dallas.tx.us
2012-07-16 15:41 ` bfriesen at simple dot dallas.tx.us
2012-07-17  9:20 ` rguenth at gcc dot gnu.org
2012-07-18  9:45 ` evstupac at gmail dot com
2012-07-18 10:50 ` rguenth at gcc dot gnu.org
2012-07-18 14:28 ` bfriesen at simple dot dallas.tx.us
2012-07-18 20:42 ` bfriesen at simple dot dallas.tx.us
2012-07-19 14:29 ` bfriesen at simple dot dallas.tx.us
2012-07-21  1:05 ` bfriesen at simple dot dallas.tx.us
2012-08-12 15:41 ` xunxun1982 at gmail dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).