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

Re: SSE2 benchmarks


gcc -msse doesn't work with floating point on P-III, as it assumes the
mmx and x87 registers are distinct.  If you are doing benchmarks
involving doubles on Windows, you should at least be certain that you
have built binutils to allow doubles to be aligned correctly in memory,
and that any use of malloc() in VC is also forced to aligned memory.
You will probably not be able to get the gcc loop alignments for
P-II/P-III to work correctly in Windows, but they will be more often
correct if you increase the binutils alignments from the standard
4-bytes.

gcc-3.1 -msse2 has been working correctly for me; this demonstrates that
it is possible to get 8-byte alignments on Windows with the newer
binutils, but I think it is not depending on 16-byte alignments.
----- Original Message -----
From: "Paolo Carlini" <pcarlini@unitus.it>
To: "Jan Hubicka" <jh@suse.cz>
Cc: <gcc@gcc.gnu.org>; <tprince@computer.org>
Sent: Monday, July 02, 2001 3:04 AM
Subject: Re: SSE2 benchmarks


> Hi all, hi Jan, hi Tim, and thanks for your feedback.
>
> In the meanwhile, I have downloaded the original flops.c code and
tried
> compiling and running it.
>
> If you are interested I may post the results for my PII (no SSE or
SSE2,
> unfortunately).
>
> Anyway, what do you (people knowing well GCC's x86 backend) expect? I
mean, in
> those simple float loops how GCC is supposed to compare to other
widespread
> compilers?
>
> I'm asking this because some *preliminary* results seem to indicate
that VC6
> (under Windoze98) is appreciably better than both 2.95.x and 3.0 ;-)
>
> Cheers,
> Paolo.
>
>
> Jan Hubicka wrote:
>
> > Hi from the vacantion :)
> > > That article scoffs at loops involving branches, but it happens
that the
> > > gcc-3.1 -msse2 option is doing extremely well on certain cases
involving
> > > comparison and branches, as well as on some cases involving sum
> > > reductions.  More than one person has jumped into assuming that
> > > gcc -msse2 includes vectorization, but up to now it uses only
serial
> > > sse2 instructions.
> > Ineed, this is confusing. I will send the patch for docs explicitly
> > mentioning that sse don't equal to autovectorization.
> >
> > Honza
> > >
>


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