public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/17088] New: poor optimisation at -O2/3 and -fnew-ra
@ 2004-08-18 20:47 jv244 at cam dot ac dot uk
  2004-08-18 20:48 ` [Bug rtl-optimization/17088] " jv244 at cam dot ac dot uk
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: jv244 at cam dot ac dot uk @ 2004-08-18 20:47 UTC (permalink / raw)
  To: gcc-bugs

GNU F95 version 3.5.0 20040818 (experimental) (i686-pc-linux-gnu)
        compiled by GNU C version 3.5.0 20040818 (experimental).

the attached program (generated code to perform small matrix multiply) 
illustrates interesting behaviour. The third number printed is the timing of 
the MULT subroutine and is the one of interest (the other times the MATMUL 
built-in and the first measures the numerical error).

ifc -O2 test.f90               : 0.38 ! reference
gfortran -O1 test.f90          : 0.26 ! nice, faster than intel
gfortran -O2 test.f90          : 0.50 ! 2x slower than -O1
gfortran -O3 test.f90          : 0.50 ! idem
gfortran -O2 -fnew-ra test.f90 : 7.78 ! 30x slower than -O1

I have no idea what the magical switch would be to good code at e.g. -O2

-- 
           Summary: poor optimisation at -O2/3 and -fnew-ra
           Product: gcc
           Version: 3.5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: rtl-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: jv244 at cam dot ac dot uk
                CC: gcc-bugs at gcc dot gnu dot org


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


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

* [Bug rtl-optimization/17088] poor optimisation at -O2/3 and -fnew-ra
  2004-08-18 20:47 [Bug rtl-optimization/17088] New: poor optimisation at -O2/3 and -fnew-ra jv244 at cam dot ac dot uk
@ 2004-08-18 20:48 ` jv244 at cam dot ac dot uk
  2004-08-19 19:00 ` [Bug rtl-optimization/17088] [new-ra] " pinskia at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: jv244 at cam dot ac dot uk @ 2004-08-18 20:48 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From jv244 at cam dot ac dot uk  2004-08-18 20:48 -------
Created an attachment (id=6955)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=6955&action=view)
test program


-- 


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


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

* [Bug rtl-optimization/17088] [new-ra] poor optimisation at -O2/3 and -fnew-ra
  2004-08-18 20:47 [Bug rtl-optimization/17088] New: poor optimisation at -O2/3 and -fnew-ra jv244 at cam dot ac dot uk
  2004-08-18 20:48 ` [Bug rtl-optimization/17088] " jv244 at cam dot ac dot uk
@ 2004-08-19 19:00 ` pinskia at gcc dot gnu dot org
  2004-08-19 19:01 ` pinskia at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-08-19 19:00 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-08-19 19:00 -------
Confirming to ...

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
  BugsThisDependsOn|                            |13246
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
           Keywords|                            |missed-optimization
   Last reconfirmed|0000-00-00 00:00:00         |2004-08-19 19:00:35
               date|                            |
            Summary|poor optimisation at -O2/3  |[new-ra] poor optimisation
                   |and -fnew-ra                |at -O2/3 and -fnew-ra


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


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

* [Bug rtl-optimization/17088] [new-ra] poor optimisation at -O2/3 and -fnew-ra
  2004-08-18 20:47 [Bug rtl-optimization/17088] New: poor optimisation at -O2/3 and -fnew-ra jv244 at cam dot ac dot uk
  2004-08-18 20:48 ` [Bug rtl-optimization/17088] " jv244 at cam dot ac dot uk
  2004-08-19 19:00 ` [Bug rtl-optimization/17088] [new-ra] " pinskia at gcc dot gnu dot org
@ 2004-08-19 19:01 ` pinskia at gcc dot gnu dot org
  2004-08-19 19:27 ` jv244 at cam dot ac dot uk
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-08-19 19:01 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-08-19 19:01 -------
Suspending until either new-regalloc branch is merged to mainline, or bug is rechecked against 
new-regalloc branch.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |SUSPENDED


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


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

* [Bug rtl-optimization/17088] [new-ra] poor optimisation at -O2/3 and -fnew-ra
  2004-08-18 20:47 [Bug rtl-optimization/17088] New: poor optimisation at -O2/3 and -fnew-ra jv244 at cam dot ac dot uk
                   ` (2 preceding siblings ...)
  2004-08-19 19:01 ` pinskia at gcc dot gnu dot org
@ 2004-08-19 19:27 ` jv244 at cam dot ac dot uk
  2004-08-19 19:29 ` [Bug rtl-optimization/17088] " pinskia at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: jv244 at cam dot ac dot uk @ 2004-08-19 19:27 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From jv244 at cam dot ac dot uk  2004-08-19 19:27 -------
Well, it is not only new-ra that is doing badly (it is of course clearly 
worst, produces interesting asm btw). Even a normal -O2 slows down 
significantly as compared to -O1. 

-- 


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


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

* [Bug rtl-optimization/17088] poor optimisation at -O2/3 and -fnew-ra
  2004-08-18 20:47 [Bug rtl-optimization/17088] New: poor optimisation at -O2/3 and -fnew-ra jv244 at cam dot ac dot uk
                   ` (3 preceding siblings ...)
  2004-08-19 19:27 ` jv244 at cam dot ac dot uk
@ 2004-08-19 19:29 ` pinskia at gcc dot gnu dot org
  2005-01-03 12:09 ` [Bug rtl-optimization/17088] [new-ra] " steven at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-08-19 19:29 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-08-19 19:29 -------
Okay I was thinking about undoing what I did but then decied against it and now I am going to just 
confirm it and remove the new-ra part for now.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|SUSPENDED                   |NEW
   Last reconfirmed|2004-08-19 19:00:35         |2004-08-19 19:29:36
               date|                            |
            Summary|[new-ra] poor optimisation  |poor optimisation at -O2/3
                   |at -O2/3 and -fnew-ra       |and -fnew-ra


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


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

* [Bug rtl-optimization/17088] [new-ra] poor optimisation at -O2/3 and -fnew-ra
  2004-08-18 20:47 [Bug rtl-optimization/17088] New: poor optimisation at -O2/3 and -fnew-ra jv244 at cam dot ac dot uk
                   ` (5 preceding siblings ...)
  2005-01-03 12:09 ` [Bug rtl-optimization/17088] [new-ra] " steven at gcc dot gnu dot org
@ 2005-01-03 12:09 ` steven at gcc dot gnu dot org
  2005-01-03 12:20 ` [Bug rtl-optimization/17088] poor fortran optimisation at -O2/3 steven at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: steven at gcc dot gnu dot org @ 2005-01-03 12:09 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From steven at gcc dot gnu dot org  2005-01-03 12:09 -------
new-ra bug, so SUSPENDING.

-- 


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


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

* [Bug rtl-optimization/17088] [new-ra] poor optimisation at -O2/3 and -fnew-ra
  2004-08-18 20:47 [Bug rtl-optimization/17088] New: poor optimisation at -O2/3 and -fnew-ra jv244 at cam dot ac dot uk
                   ` (4 preceding siblings ...)
  2004-08-19 19:29 ` [Bug rtl-optimization/17088] " pinskia at gcc dot gnu dot org
@ 2005-01-03 12:09 ` steven at gcc dot gnu dot org
  2005-01-03 12:09 ` steven at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: steven at gcc dot gnu dot org @ 2005-01-03 12:09 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From steven at gcc dot gnu dot org  2005-01-03 12:09 -------
new-ra bug, so SUSPENDING.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |SUSPENDED


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


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

* [Bug rtl-optimization/17088] poor fortran optimisation at -O2/3
  2004-08-18 20:47 [Bug rtl-optimization/17088] New: poor optimisation at -O2/3 and -fnew-ra jv244 at cam dot ac dot uk
                   ` (6 preceding siblings ...)
  2005-01-03 12:09 ` steven at gcc dot gnu dot org
@ 2005-01-03 12:20 ` steven at gcc dot gnu dot org
  2005-01-06 21:30 ` jv244 at cam dot ac dot uk
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: steven at gcc dot gnu dot org @ 2005-01-03 12:20 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From steven at gcc dot gnu dot org  2005-01-03 12:17 -------
On closer inspection this is not a new-ra bug, sorry Joost.

Can you see how the numbers look for you today?  Don't use new-ra, it is
known to be very, very broken.


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|SUSPENDED                   |NEW
   Last reconfirmed|2004-08-19 19:29:36         |2005-01-03 12:17:45
               date|                            |
            Summary|[new-ra] poor optimisation  |poor fortran optimisation at
                   |at -O2/3 and -fnew-ra       |-O2/3


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


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

* [Bug rtl-optimization/17088] poor fortran optimisation at -O2/3
  2004-08-18 20:47 [Bug rtl-optimization/17088] New: poor optimisation at -O2/3 and -fnew-ra jv244 at cam dot ac dot uk
                   ` (7 preceding siblings ...)
  2005-01-03 12:20 ` [Bug rtl-optimization/17088] poor fortran optimisation at -O2/3 steven at gcc dot gnu dot org
@ 2005-01-06 21:30 ` jv244 at cam dot ac dot uk
  2005-01-06 21:39 ` pinskia at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: jv244 at cam dot ac dot uk @ 2005-01-06 21:30 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From jv244 at cam dot ac dot uk  2005-01-06 21:30 -------
(In reply to comment #8)
> On closer inspection this is not a new-ra bug, sorry Joost.
> Can you see how the numbers look for you today?  Don't use new-ra, it is
> known to be very, very broken.

timings for -O1 and -O2 are still unchanged for a recent version of gfortran, 
i.e. -O2 is half the speed of -O1


-- 


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


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

* [Bug rtl-optimization/17088] poor fortran optimisation at -O2/3
  2004-08-18 20:47 [Bug rtl-optimization/17088] New: poor optimisation at -O2/3 and -fnew-ra jv244 at cam dot ac dot uk
                   ` (8 preceding siblings ...)
  2005-01-06 21:30 ` jv244 at cam dot ac dot uk
@ 2005-01-06 21:39 ` pinskia at gcc dot gnu dot org
  2005-01-17 15:33 ` pinskia at gcc dot gnu dot org
  2005-04-07  7:25 ` pinskia at gcc dot gnu dot org
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-01-06 21:39 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-01-06 21:39 -------
Looks like to me the register allocator is f'ing up as on PPC (where there more fp registers) -O2 is faster 
(by a factor of 2) than -O1.  It is also one of the reasons why new-ra could be fucking up too.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
 GCC target triplet|                            |i686-pc-linux-gnu


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


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

* [Bug rtl-optimization/17088] poor fortran optimisation at -O2/3
  2004-08-18 20:47 [Bug rtl-optimization/17088] New: poor optimisation at -O2/3 and -fnew-ra jv244 at cam dot ac dot uk
                   ` (9 preceding siblings ...)
  2005-01-06 21:39 ` pinskia at gcc dot gnu dot org
@ 2005-01-17 15:33 ` pinskia at gcc dot gnu dot org
  2005-04-07  7:25 ` pinskia at gcc dot gnu dot org
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-01-17 15:33 UTC (permalink / raw)
  To: gcc-bugs



-- 
Bug 17088 depends on bug 13246, which changed state.

Bug 13246 Summary: [new-ra][meta-bug] new-ra related problems
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13246

           What    |Old Value                   |New Value
----------------------------------------------------------------------------
             Status|SUSPENDED                   |RESOLVED
         Resolution|                            |WONTFIX

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


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

* [Bug rtl-optimization/17088] poor fortran optimisation at -O2/3
  2004-08-18 20:47 [Bug rtl-optimization/17088] New: poor optimisation at -O2/3 and -fnew-ra jv244 at cam dot ac dot uk
                   ` (10 preceding siblings ...)
  2005-01-17 15:33 ` pinskia at gcc dot gnu dot org
@ 2005-04-07  7:25 ` pinskia at gcc dot gnu dot org
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-04-07  7:25 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-04-07 07:24 -------
This seems to be fixed on the mainline at least for me:
gold:~>gfortran -O1 t.f90 
gold:~>!./
./a.out ; ./a.out ; ./a.out
  2.220446049250313E-016
   1.62675300000000       0.990850000000000     
  2.220446049250313E-016
   1.57976000000000        1.00884700000000     
  2.220446049250313E-016
   1.64775000000000       0.999848000000000     
gold:~>gfortran -O2 t.f90
gold:~>!./
./a.out ; ./a.out ; ./a.out
  4.440892098500626E-016
   1.49477200000000       0.722890000000000     
  4.440892098500626E-016
   1.53276600000000       0.716892000000000     
  4.440892098500626E-016
   1.53476700000000       0.707892000000000     
gold:~>gfortran -O3 t.f90
gold:~>!./
./a.out ; ./a.out ; ./a.out
  4.440892098500626E-016
   1.51277000000000       0.784881000000000     
  4.440892098500626E-016
   1.52476900000000       0.722890000000000     
  4.440892098500626E-016
   1.54276600000000       0.710892000000000  

Though MATMUL should be able to improved still.

-- 


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


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

end of thread, other threads:[~2005-04-07  7:25 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-08-18 20:47 [Bug rtl-optimization/17088] New: poor optimisation at -O2/3 and -fnew-ra jv244 at cam dot ac dot uk
2004-08-18 20:48 ` [Bug rtl-optimization/17088] " jv244 at cam dot ac dot uk
2004-08-19 19:00 ` [Bug rtl-optimization/17088] [new-ra] " pinskia at gcc dot gnu dot org
2004-08-19 19:01 ` pinskia at gcc dot gnu dot org
2004-08-19 19:27 ` jv244 at cam dot ac dot uk
2004-08-19 19:29 ` [Bug rtl-optimization/17088] " pinskia at gcc dot gnu dot org
2005-01-03 12:09 ` [Bug rtl-optimization/17088] [new-ra] " steven at gcc dot gnu dot org
2005-01-03 12:09 ` steven at gcc dot gnu dot org
2005-01-03 12:20 ` [Bug rtl-optimization/17088] poor fortran optimisation at -O2/3 steven at gcc dot gnu dot org
2005-01-06 21:30 ` jv244 at cam dot ac dot uk
2005-01-06 21:39 ` pinskia at gcc dot gnu dot org
2005-01-17 15:33 ` pinskia at gcc dot gnu dot org
2005-04-07  7:25 ` pinskia at gcc dot gnu dot org

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).