[gmx-users] SMP/Parallel mdrun

Ian Stokes-Rees ijstokes at crystal.harvard.edu
Thu Nov 27 03:49:10 CET 2008

Hi Mark,

Mark Abraham wrote:
> Terminology - GROMACS is not threaded, but uses MPI processes for 
> parallelism.

Yes, I gathered that.
>> I have an MPI-compiled version of gromacs v4.0 and am attempting to 
>> get parallel execution on a 2x2 core AMD Opteron system via:
>> $ lamboot
>> $ mdrun -np 4 -s ../1WOM.tpr -v -N 4
> -N does nothing, and -np is no longer accepted - as you'd know from 
> reading mdrun -h, right?
That is a bit of a condecending way of putting it. If I knew -N did 
nothing and -np was no longer accepted, then of course I would not have 
used them. In fact, I was reading the documentation from a file called 
"manual-4.0.pdf" which stated:

If you have a single machine with multiple processors you don’t have to 
use the mpirun com-
mand, but you can do with an extra option to mdrun:
% mdrun -np 8 -s topol -v -N 8

so that is where I took the example from. I think this PDF was linked 
from the gromacs "documentation" section of the website.

> Like most MPI parallel codes, you need to use mpirun. If your lam 
> environment is correctly configured, then I think you will not need 
> -np 4 as an argument to mpirun.
> Also, probably you are actually running a non-MPI gromacs, since by 
> default, using --enable-mpi will suffix mdrun to be mdrun_mpi.
Doesn't look like it:

$ ./configure --prefix=/opt/osg-shared/se/app/site --with-pic --enable-mpi
$ make
$ make install
$ ls /opt/osg-shared/se/app/site/bin/ | grep mdrun

Anyway, thanks for your suggestions because I now have it working via:

$ mpirun -np 4 /opt/osg-shared/se/app/site/bin/mdrun -s ../1WOM.tpr -v -N 4

and I see 4 processes running at 100% and an estimated run time 25% of 
the serial version.


Ian Stokes-Rees, Research Associate
SBGrid, Harvard Medical School

More information about the gromacs.org_gmx-users mailing list