This is the mail archive of the gcc-patches@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]

Re: [BENCHMARK]-mfpmath=sse should disable x387 intrinsics


On Thu, 25 Nov 2004 10:38:51 -0700 (MST), Roger Sayle
<roger@eyesopen.com> wrote:
> 
> On Thu, 25 Nov 2004, Richard Guenther wrote:
> > I guess unrolling loops increases register pressure and as such makes
> > use of the extra FP registers.  The testcase is again 50 iterations of
> > my famous tramp3d-v3.cpp.
> 
> Do you have numbers with an without -funroll-loops to confirm that
> it is the loop unrolling that shifts the trade-off between SSE and x87?

Yes - here are numbers of -funroll-loops compared to that of -fpeel-loops
(loop peeling is to completely unroll for(i=0; i<3; ++i) blah; that we don't do
otherwise):

                        -fpeel-loops           -funroll-loops
-mfpmath=sse       1m6s                     56.0s
         -                1m9s                     59.7s
                          4.3% down            6.2% down

so, increased register pressure increases sse gains (though I don't have a
test that shows x87 to outperform SSE here).

This tests were with todays CVS, using -mfpmath=sse -mfancy-math-387
does not show any difference to my surprise, using g++ from Nov21 with
-mfpmath=sse, the difference is in the noise, too.  So I guess your patch
is ok - sorry for not testing enough before complaining.

Richard.


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