This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: 0005-Switch-Core-2-to-new-tuning
- From: Jack Howarth <howarth at bromo dot med dot uc dot edu>
- To: Uros Bizjak <ubizjak at gmail dot com>
- Cc: Maxim Kuvyrkov <maxim at codesourcery dot com>, Richard Henderson <rth at redhat dot com>, "H.J. Lu" <hongjiu dot lu at intel dot com>, gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 30 Nov 2010 19:00:32 -0500
- Subject: Re: 0005-Switch-Core-2-to-new-tuning
- References: <4CBD7F43.3050209@codesourcery.com> <159AA491-9386-49D7-8E05-11A7CFB624E1@codesourcery.com> <AANLkTi=bn13kZRG4hbbZxY524aPHFLjwWpe50x-FpFkP@mail.gmail.com>
On Tue, Nov 30, 2010 at 01:51:41PM +0100, Uros Bizjak wrote:
> On Tue, Nov 30, 2010 at 1:39 PM, Maxim Kuvyrkov <maxim@codesourcery.com> wrote:
> > This patch switches Core 2 to "new" tuning that Core i7 uses.
> >
> > The "new" tuning very much resembles tuning for generic32 and generic64 CPUs. ?Generic tuning appears to provide best performance results on Core 2/i7 hardware.
> >
> > OK for trunk?
>
> Can you please summarize SPEC2k, SPEC2k6 and Polyhedron results for
> patched and unpatched gcc?
>
> Thanks,
> Uros.
Uros,
On x86-apple-darwin10, benchmarking the Polyhedron 2005 suite using a dual 2.8 GHz
Xeon 2008 MacPro, I get the following results with -mtune=generic and -mtune=core2
at -m64 and -m32. These are for r167305 with both 0005-Switch-Core-2-to-new-tuning
and 0006-Core-2-i7-DFA applied.
x86_64-apple-darwin10 target
Compile Command : gfortran -mtune=XXXX -ffast-math -funroll-loops -O3 %n.f90 -o %n
benchmark -mtune=generic -mtune=core2 %change
ac 8.90 8.81 -1.0
aermod 17.23 17.34 +0.6
air 5.57 5.56 -0.2
capacita 32.64 32.77 +0.4
channel 1.84 1.84 0.0
doduc 26.69 26.72 +0.1
fatigue 8.01 8.15 +1.7
gas_dyn 4.32 4.29 -0.7
induct 12.39 12.49 +0.8
linpk 15.46 15.48 +0.1
mdbx 11.21 11.20 -0.1
nf 30.12 30.17 +0.2
protein 32.91 32.41 -1.5
rnflow 23.18 23.17 -0.0
test_fpu 8.08 8.03 -0.6
tfft 1.87 1.86 -0.5
geo. mean 10.82 10.82
Compile Command : gfortran -m32 -mtune=XXXX -ffast-math -funroll-loops -O3 %n.f90 -o %n
benchmark -mtune=generic -mtune=core2 %change
ac 10.96 10.78 -1.7
aermod 19.61 19.43 -0.9
air 6.08 6.15 +1.1
capacita 45.32 45.06 -0.6
channel 1.98 1.98 0.0
doduc 31.85 31.12 -2.3
fatigue 10.18 10.17 -0.1
gas_dyn 4.71 4.70 -0.2
induct 14.16 13.96 -1.4
linpk 15.53 15.47 -0.4
mdbx 11.34 11.31 -0.3
nf 27.53 27.50 -0.1
protein 38.23 38.30 +0.2
rnflow 24.80 24.68 -0.5
test_fpu 10.17 10.14 -0.3
tfft 1.92 1.92 0.0
geo. mean 12.16 12.10
These results are much improved from previous results...
http://gcc.gnu.org/ml/gcc-patches/2010-02/msg01272.html
It is interesting that at -m32, -mtune=core2 shows a net
improvement whereas at -m64 that option is a wash compared
to -mtune=generic.
Jack
ps Once these two patches go into gcc trunk, we should finally be
able to default *86*-apple-darwin to -mtune=core2...
http://gcc.gnu.org/ml/gcc-patches/2010-08/msg01024.html