[MMTK] speed

Konrad Hinsen hinsen@cnrs-orleans.fr
Tue, 12 Sep 2000 15:28:46 +0200

>  I wander, does anyone have data how MD simulations in MMTK compare
>  to AMBER or CHARMM simulations in terms of speed?

I suppose that any useful comparison would turn out to become a
full-size research project. The results will depend on

1) the hardware being used
2) the system being simulated
3) the force field options
4) the integration options

and perhaps other parameters. Of course the parameters that can be
varied are not the same in all programs, and there are hard-coded
algorithmic differences, so setting up a fair comparison requires an
in-depth knowledge of all the programs involved.

If you just run a simulation using each program's default settings,
MMTK will come out slowest. The reason is that all default values are
set for safety, not speed. Working with the default values should
never get you wrong results (as much as possible), but you pay for
that in speed. Other programs choose default values that are optimized
for "typical" systems, but then you risk doing something very wrong
for other systems. In this context I'd also like to point out that
MMTK, unless CHARMM and AMBER, is not meant for biomolecular systems
only, so the "typical systems" approach wouldn't work anyway.

After all these warnings, I can provide some anecdotical evidence. In
the early days of MMTK I did a comparison for crambin in vacuum (in
order to avoid differences related to periodic boundary conditions).
On the PentiumPro 200 Linux system I had at the time, MMTK was 20%
slower than CHARMM, using the GNU compilers.

I don't expect MMTK ever (i.e. within the next few years ;-) to be
faster than any Fortran program due to significant differences in
compiler optimization techniques between C and Fortran. But as long as
the performance loss is small (and I consider 20% small enough), I
don't care much, since I gain a lot of time by using a more
user-friendly program.

>From performance measurements of MMTK on different computers (the
speedup of an Alpha compared to a Pentium is smaller for MMTK than for
many other programs) I have the suspicion that MMTK performs
relatively badly (compared to other programs) on machines with a
strong cache performance when the system is sufficiently large. I am
planning to use Lperfex to find out more about cache performance under
Linux at least; the difference might as well come from compiler
differences. All this might take some time to figure out.

Konrad Hinsen                            | E-Mail: hinsen@cnrs-orleans.fr
Centre de Biophysique Moleculaire (CNRS) | Tel.: +33-
Rue Charles Sadron                       | Fax:  +33-
45071 Orleans Cedex 2                    | Deutsch/Esperanto/English/
France                                   | Nederlands/Francais