[gmx-users] icc
Graham Smith
smithgr at cancer.org.uk
Fri Jun 28 19:46:12 CEST 2002
I've investigated the new intel compiler a bit more, in particular
when it's used to compile the inner loops, to compare with gcc (2.96)
and with the hand-coded assembler (because I have had to hack the inner
loop code generator for the hydrophobic potential I want, as Erik
suggested to me a month ago, so will have to use compiler-generated
code...)
The tests I've done are scarcely exhaustive and there are some
anomalous-seeming results, but I thought you might be interested to
see them anyway. I'm surprised that icc doesn't in general do better,
but, at least its best performance is where I'm going to need it...
There are 3 systems
2pol = E coli DNA Polymerase III beta subunit + water,
55894 atom 17854 molecules, 500 x 2 fs steps,
cutoffs 0.9 coul/1.4 vdw + PME, nstlist 5, const pT
5pti = BPTI + water,
13905 atom 4503 molecules, 2000 x 2 fs steps
ES as 2pol
(with perfect linear scaling of all algorithms and no cache
effects should take the same time as 2pol, within 1%)
pcred = simple lipid model , no water, 3000 atoms 1000 molecules,
langevin dynamics, 10000 x 20 fs steps
user-tabuled potential functions, cutoff 3.0, nstlist 1, const VT
for the lipid test I didn't use my hydrophobic potential but kept with
pairwise additive ones so I could still use the provided i386assembler.
and there are two processors,
p3 = 800 MHz PIII, 770Mb main mem, 256kb cache , Redhat 7.2 (2.4.9-31)
p4 = 2.0 GHz P4, 256Mb main mem, 512kb cache , Redhat 7.2 (2.4.9-31)
all code including fftw (though fftw's performance varied very
little) was recompiled on the p3 or p4 it was going to
run on, after doing a make distclean first, with the flags described
below
all runs are single-processor
and there are 6 combinations of compilers and flags
gcc_asm means just ./configure
gcc_noasm means ./configure --disable-x86-asm
icc_O2 means setenv CC icc; setenv CFLAGS -O2
./configure --disable-x86-asm
icc_opt means setenv CC icc; setenv CFLAGS " -O3 -axW -tpp7 "
(p4 flags; " -O3 -axK " on p3)
./configure --disable-x86-asm
icc_asm means (same setenvs as icc_opt) ; ./configure
icc_ifc means setenv CC icc; setenv CFLAGS " -O3 -axW -tpp7 "
setenv F77 ifc ; setenv FFLAGS " -O3 -axW -tpp7 "
(p4 flags; " -O3 -axK " on p3)
./configure --disable-x86-asm --enable-fortran
(icc_ifc needed some hacking of the makefiles before it would compile)
I give the NODE time in seconds as reported in the .log files
2pol
p3
gcc_asm 1000.8
gcc_noasm 1434.7
icc_asm 957.9
icc_ifp 1469.0
icc_opt 1863.5
icc_O2 1864.5
p4
gcc_asm 478.3
gcc_noasm 731.7
icc_asm 428.6
icc_ifp 706.2
icc_opt 678.2
icc_O2 1241.3
5pti
p3
gcc_asm 759.6
gcc_noasm 1170.1
icc_asm 722.0
icc_ifp 1218.8
icc_opt 1528.2
icc_O2 1604.5
p4
gcc_asm 338.5
gcc_noasm 566.4
icc_asm 313.4
icc_ifp 574.0
icc_opt 531.7
icc_O2 1099.4
pcred
p3
gcc_asm 316.1
gcc_noasm 323.2
icc_asm 262.3
icc_ifp 270.1
icc_opt 268.5
icc_O2 276.8
p4
gcc_asm 157.7
gcc_noasm 181.8
icc_asm 104.9
icc_ifp 99.6
icc_opt 99.4
icc_O2 117.0
########################################################################
Dr. Graham R. Smith, Department of Biological Sciences,
Biomolecular Modelling Laboratory, Biochemistry Building,
Cancer Research UK, Imperial College of Science,
44 Lincoln's Inn Fields, Technology & Medicine,
London WC2A 3PX, London SW7 2AZ,
U.K. U.K.
Tel: +44-(0)20 7269 3348 Tel: +44-(0)20 7594 5737
email: graham.smith at cancer.org.uk
URL: http://www.bmm.icnet.uk/~smithgr
More information about the gromacs.org_gmx-users
mailing list