Polyhedron speed comparison (on AMD64)

Tobias Burnus burnus@net-b.de
Sat Dec 2 11:59:00 GMT 2006


Hi,

Tobias Burnus schrieb:
>> Fixing gas_dyn and fatigue would close the gap [to ifort].
>>     
Using Richard's vec sqrt patch,
   http://gcc.gnu.org/ml/gcc-patches/2006-11/msg01891.html
gas_dyn improves a lot [cf. PR30032]:

Before 0m13.999s, now 0m10.74s (ifort 0m7.638s)
Improvement: 23% faster

However, if I compare
   4.3.0 20061130
with
   4.3.0 20061202 + vec sqrt patch "(2)"
I see in total a 1% performance worsening:

Test           gfortran 4.3   gfortran 4.3(2)  ifort 9.1   
------------   -------------  ---------------  -----------
          ac   13.96 [100]    13.88 [ 99]      15.06 [109]
      aermod   34.02 [100]    35.50 [104]      29.83 [ 88]
         air   14.87 [100]    15.45 [104]      13.84 [ 93]
    capacita   83.68 [100]    85.67 [102]      87.15 [104]
     channel   12.70 [100]    12.80 [101]      12.84 [101]
       doduc   42.78 [100]    43.06 [101]      40.85 [ 95]
     fatigue   20.93 [100]    22.14 [106]      11.52 [ 55]
     gas_dyn   13.71 [100]    10.48 [ 76]       8.69 [ 62]
      induct   51.50 [100]    51.87 [107]      43.71 [ 84]
       linpk   26.16 [100](1) 26.90 [103](1)   25.92 [ 99]
        mdbx   24.50 [100]    25.01 [102]      21.43 [ 87]
          nf   31.79 [100]    33.16 [104]      26.41 [ 83]
     protein   66.19 [100]    66.59 [103]      60.63 [ 91]
      rnflow   37.12 [100]    38.04 [104]      43.00 [116]
    test_fpu   19.65 [100]    20.48 [104]      17.99 [ 92]
        tfft    7.83 [100]     7.82 [100]       7.78 [100]
------------   -------------  ---------------  ----------
  Geom. Mean   25.71 [100]    25.83 [101]      23.11 [ 90]

Looking at
http://www.suse.de/~gcctest/c++bench/polyhedron/polyhedron-summary.txt-2-0.html
one sees (w/o vec sqrt):

ac: Nov 13 and Nov 14 (~31 to ~33.5s) -> 8%; see also protein

aermod - increased by 9%: 46s Nov 26, 50.8s Dec 1

doduc - increased by 6%: 57.6s Nov 28, 61.25 Nov 30/Dec 1

protein: Nov 14 (~70s) to Nov 15 (~73s) -> 4% slower
"correlates with the PPRE introduction (enabled at -O3 only) which might
increase register pressure, but also improves Polyhedron rnflow a lot." (Richard Guenther)
See http://gcc.gnu.org/ml/gcc/2006-12/msg00021.html


The run time of the test suite of octopus (www.tddft.org) increased
from 32m30.9s to 32m54.6s between Nov 11 and Dec 2 (= 1%).

Tobias



More information about the Fortran mailing list