Re: Running REMD

From: Giacomo Fiorin (giacomo.fiorin_at_gmail.com)
Date: Mon Sep 19 2016 - 11:22:52 CDT

Hello Nicolas, the multiple-replica infrastructure in NAMD underwent
several revisions, particularly because its first implementation had to be
done in pure Tcl. This was due to a limitation of Charm++, which unlike
MPI did not support multiple communicators until recently (Charm++ 6.5 -
NAMD 2.10).

Starting version 2.10, NAMD does support replica exchange protocols
natively, but the user interface remains Tcl for other reasons, primarily
flexibility. There is actually support for many more algorithms than
replica-exchange:
http://www.ks.uiuc.edu/Research/namd/2.11/ug/node9.html#SECT
ION00052300000000000000

This can be coupled to the scripting interface of Colvars:
http://www.ks.uiuc.edu/Research/namd/2.11/ug/node59.html
http://colvars.github.io/colvars-refman-namd/colvars-refman-namd.html
For example, bias exchange through Colvars can be done either by the
specialized Tcl commands (e.g. colvarbias) or by using the general-purpose
cv command to delete/add/swap biases. More direct communication mechanisms
between specific biases will be supported in the future, to eliminate the
overhead of destroying and creating biases.

Lastly, keep in mind that most user tutorials only reflect the
functionality that was current when they were written, but the only
up-to-date documentation is a user's guide or reference manual.

Giacomo

On Wed, Sep 14, 2016 at 4:10 AM, Nicolas Martin <nicolasmartin973_at_gmail.com>
wrote:

> Dear users,
>
> I am trying to run bias exchange umbrella sampling and read in this
> tutorial (http://www.ks.uiuc.edu/Training/Tutorials/science/umbrella/
> REUS-1D.pdf) that there is no official NAMD command or colvar module for
> doing so. I figure out I might as well start with running temperature
> exchange and then change the script to perform bias exchange (BEUS) and
> not temperature exchange but to avoid non productive use of my time I
> wanted to know if any of you had a TCL script to do so or a in house
> tutorial that I could follow.
>
> Running the tutorial mentioned above I'm getting an error as shown bellow.
> Sorry for the super long text but I don't know what is relevant to shown
> you. I'm running on a 32 cores machine. Does any of you know what I am
> doing wrong ?
>
> XXXXX_at_nXXX:~/umbrella_1d$ mpirun -np 16 NAMD_2.10_Linux-x86_64-netlrts/namd2
> +replicas 16 job0.conf +stdout output/%d/job0.%d.log
> namd2: machine-common-core.c:863: create_partition_map: Assertion
> `(_Cmi_numnodes_global % _partitionInfo.numPartitions) == 0' failed.
> namd2: machine-common-core.c:863: create_partition_map: Assertion
> `(_Cmi_numnodes_global % _partitionInfo.numPartitions) == 0' failed.
> namd2: machine-common-core.c:863: create_partition_map: Assertion
> `(_Cmi_numnodes_global % _partitionInfo.numPartitions) == 0' failed.
> namd2: machine-common-core.c:863: create_partition_map: Assertion
> `(_Cmi_numnodes_global % _partitionInfo.numPartitions) == 0' failed.
> namd2: machine-common-core.c:863: create_partition_map: Assertion
> `(_Cmi_numnodes_global % _partitionInfo.numPartitions) == 0' failed.
> namd2: machine-common-core.c:863: create_partition_map: Assertion
> `(_Cmi_numnodes_global % _partitionInfo.numPartitions) == 0' failed.
> namd2: machine-common-core.c:863: create_partition_map: Assertion
> `(_Cmi_numnodes_global % _partitionInfo.numPartitions) == 0' failed.
> namd2: machine-common-core.c:863: create_partition_map: Assertion
> `(_Cmi_numnodes_global % _partitionInfo.numPartitions) == 0' failed.
> namd2: machine-common-core.c:863: create_partition_map: Assertion
> `(_Cmi_numnodes_global % _partitionInfo.numPartitions) == 0' failed.
> namd2: machine-common-core.c:863: create_partition_map: Assertion
> `(_Cmi_numnodes_global % _partitionInfo.numPartitions) == 0' failed.
> namd2: machine-common-core.c:863: create_partition_map: Assertion
> `(_Cmi_numnodes_global % _partitionInfo.numPartitions) == 0' failed.
> Charm++: standalone mode (not using charmrun)
> Charm++> Running in non-SMP mode: numPes 1
> Charm++: standalone mode (not using charmrun)
> Charm++> Running in non-SMP mode: numPes 1
> Charm++: standalone mode (not using charmrun)
> Charm++> Running in non-SMP mode: numPes 1
> Charm++: standalone mode (not using charmrun)
> Charm++> Running in non-SMP mode: numPes 1
> Charm++: standalone mode (not using charmrun)
> Charm++> Running in non-SMP mode: numPes 1
> Charm++: standalone mode (not using charmrun)
> Charm++> Running in non-SMP mode: numPes 1
> Charm++: standalone mode (not using charmrun)
> Charm++> Running in non-SMP mode: numPes 1
> Charm++: standalone mode (not using charmrun)
> Charm++> Running in non-SMP mode: numPes 1
> Charm++: standalone mode (not using charmrun)
> Charm++> Running in non-SMP mode: numPes 1
> Charm++: standalone mode (not using charmrun)
> Charm++> Running in non-SMP mode: numPes 1
> Charm++: standalone mode (not using charmrun)
> Charm++> Running in non-SMP mode: numPes 1
> --------------------------------------------------------------------------
> mpirun noticed that process rank 0 with PID 30840 on node n304 exited on
> signal 6 (Aborted).
> --------------------------------------------------------------------------
> 10 total processes killed (some possibly by mpirun during cleanup)
> namd2: machine-common-core.c:863: create_partition_map: Assertion
> `(_Cmi_numnodes_global % _partitionInfo.numPartitions) == 0' failed.
> Charm++: standalone mode (not using charmrun)
> Charm++> Running in non-SMP mode: numPes 1
> Charm++: standalone mode (not using charmrun)
> Charm++> Running in non-SMP mode: numPes 1
> namd2: machine-common-core.c:863: create_partition_map: Assertion
> `(_Cmi_numnodes_global % _partitionInfo.numPartitions) == 0' failed.
>
> I finally, I have a more general question to the NAMD community. Why is
> replica exchange not implemented in NAMD and one has to use this TCL script
> ? Isn't it decreasing the performances ? From what I have seen it is
> implement in PLUMED and other codes such as GROMACS.
>
> Cheers, and thank you in advance for you help and advices,
>
> NM
>
>

-- 
Giacomo Fiorin
Associate Professor of Research
Institute for Computational Molecular Science (ICMS)
College of Science and Technology, Temple University
1925 North 12th Street (035-07), Room 704D
Philadelphia, PA 19122-1801
Phone: +1-215-204-4213
Scholar: http://goo.gl/Q3TBQU
Personal: http://giacomofiorin.github.io/
Lab page: https://icms.cst.temple.edu/members.html
*"As computer programmers we have a responsibility to make sure that we run
the computers instead of the computers running us."*  - Steve Oualline

This archive was generated by hypermail 2.1.6 : Tue Dec 27 2016 - 23:22:29 CST