This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
c/3913: On Athlon's, gcc 3.0 produces code running 1/2 as fast as gcc 2.95
- To: gcc-gnats at gcc dot gnu dot org
- Subject: c/3913: On Athlon's, gcc 3.0 produces code running 1/2 as fast as gcc 2.95
- From: rwhaley at cs dot utk dot edu
- Date: 2 Aug 2001 00:50:22 -0000
- Cc: rwhaley at cs dot utk dot edu
- Reply-To: rwhaley at cs dot utk dot edu
>Number: 3913
>Category: c
>Synopsis: On Athlon's, gcc 3.0 produces code running 1/2 as fast as gcc 2.95
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: pessimizes-code
>Submitter-Id: net
>Arrival-Date: Wed Aug 01 17:56:00 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator: rwhaley@cs.utk.edu
>Release: gcc version 3.0
>Organization:
>Environment:
RedHat Linux 7.1 on a 1.2Ghz Athlon. gcc -v gives:
hades. /usr/local/gcc-3.0/bin/gcc -v
Reading specs from /usr/local/gcc-3.0/lib/gcc-lib/i686-pc-linux-gnu/3.0/specs
Configured with: ./configure --prefix=/usr/local/gcc-3.0
Thread model: single
gcc version 3.0
>Description:
The new memory fetch scheduling algorithm reduces Athlon performance by a factor of 2 over the one used by gcc 2.95.x. It also appears that the x87 register stack utilization algorithm is worse than 2.95.x as well.
Problem is too complex to reduce to 1 single preprocessed file. The full problem is detailed (along with code to reproduce, and assembler outputs) here:
http://www.cs.utk.edu/~rwhaley/ATLAS/gcc30.html
>How-To-Repeat:
http://www.cs.utk.edu/~rwhaley/ATLAS/gcc30.html#dup
>Fix:
Have option to use 2.95 scheduler for scheduling problem.
Have option to use 2.95 x87 register stack for register stack usage problem.
>Release-Note:
>Audit-Trail:
>Unformatted: