[gmx-users] Parallelization scheme and terminology help

Mark Abraham mark.j.abraham at gmail.com
Tue Jan 22 01:27:27 CET 2013

On Mon, Jan 21, 2013 at 11:50 PM, Brad Van Oosten <bv07ay at brocku.ca> wrote:

> I have been lost in the sea of terminology for installing gromacs with
> multi-processors.   The plan is to upgrade from 4.5.5 to the 4.6 and i want
> the optimal install for my system.  There is a a nice explanaion at
> http://www.gromacs.org/**Documentation/Acceleration_**and_parallelization<http://www.gromacs.org/Documentation/Acceleration_and_parallelization>but the number of different options and terminology has confused me.

That's life, unfortunately. Nomenclature is poorly standardized and gets
re-used by different vendors to mean different things, or in different

I currently have one computer with 2 processor sockets each with 4 cores
> each with 2 threads.  A mouthful which in the end allows for 16 processes
> at once(2*4*2).

Your sockets don't require a network to talk to each other, so thread-mpi
suffices. Probably your "threads" are hyper-threads, which may or may not
be useful for GROMACS. But you will need to read actual documentation and
look up chip set descriptions to really know what you have.

> The way i read the documentation is that MPI is needed for the talk
> between the 2 physical processors, OpenMP does the talk between the 4 cores
> in each processor and thread-MPI does the treading? or does thread-MPI do
> everything?
> What would be the Parallelization scheme is required?

Probably, use ThreadMPI and forget about everything else :-) This question
cannot be answered in the abstract (you'd need to know full hardware
characteristics and simulation system characteristics). It is best assessed
by trying a few options and comparing the throughput you observe on the
systems you care about.


More information about the gromacs.org_gmx-users mailing list