------- Comment #112 from jv244 at cam dot ac dot uk 2007-06-20 20:25 ------- after the fix for PR 32140 gfortran compiles CP2K correctly on x86_64 using '-O3 -ffast-math -ftree-vectorize -funroll-loops -march=native' . Thanks !
I've made a new tar file available that contains a more recent version of CP2K, together with two benchmarks and a little script to run and test them as: http://www.pci.unizh.ch/vandevondele/tmp/CP2K_gcc_2007_06.tgz The timings of the benchmarks (against ifort 9.1 '-O1 -xT' on intel core2 duo) are gfortran: > ./do_all BENCH01 IS OK BENCH01 WALL TIME [s] 267.27 BENCH02 IS OK BENCH02 WALL TIME [s] 86.77 intel: > ./do_all BENCH01 IS OK BENCH01 WALL TIME [s] 231.78 BENCH02 IS OK BENCH02 WALL TIME [s] 77.84 this seems quite good (despite being 10-15% slower). For the first benchmark most of the slowdown seems to be in one part of the code (core_hamiltonian), for which gfortran is about 35% slower (I suspect the difference comes from one subroutine ai_overlap_new). There is one more issue, for which I will file a PR shortly. Compilation fails with an out of memory error at '-O1 -fbounds-check'. This happens on an opteron with 16Gb of RAM while compilation with e.g. '-O1' or '-O3' goes fine. Watching top, the maximum virtual memory is about 3Gb (and somewhat more than 2Gb at -O3). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29975