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: 0005-Switch-Core-2-to-new-tuning


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


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