AMBER Archive (2009)

Subject: RE: [AMBER] OpenMP

From: Ross Walker (
Date: Mon Oct 12 2009 - 13:29:45 CDT

Hi Ben,

> Can anyone clarify for me whether Sander supports OpenMP
> parallelisation
> at present? I see that the configure script takes a -openmp argument,
> but it's not clear to me what parts of AmberTools and Amber this
> argument applies to.

Simple answer is no it does not. Parts of AMBER Tools (NAB) support openMP
parallelization but that is all.

Long answer: The openmp flag is there but undocumented since it is work in
progress and meant only for developmental use. It actually turns on a hybrid
openMP / MPI support but ONLY for matrix diagonalization within the QM/MM
code. It is mainly intended to allow support for the openMP parallelization
of lapack routines such as dspevd and dsyevd inside Intel's MKL libraries.
The idea is to be able to use these in concert with a MPI run such that all
8 cores of an SMP node can be used by the master MPI thread to do SMP
diagonalization in QM/MM while the other 7 MPI threads running on this code
are idle at a barrier waiting for the diagonalization to finish. In short it
is VERY experimental and best left alone unless you want to experiment with
this to improve QM/MM performance. If you do then it is probably best to
contact me directly and I can give you some examples of how to use this. It
is tricky given that a LOT of MPI libraries set thread affinity so if you
just naively turn it on you get all 8 SMP threads locked to the same core as
the master node and thus performance goes through the floor.

I hope this helps,
All the best

|\oss Walker

| Assistant Research Professor |
| San Diego Supercomputer Center |
| Tel: +1 858 822 0854 | EMail:- |
| | PGP Key available on request |

Note: Electronic Mail is not secure, has no guarantee of delivery, may not
be read every day, and should not be used for urgent or sensitive issues.

AMBER mailing list