[gmx-users] Plumed-2.1.0 Gromacs-5.0.2 installation error

jkrieger at mrc-lmb.cam.ac.uk jkrieger at mrc-lmb.cam.ac.uk
Thu Aug 11 02:05:55 CEST 2016


The duplicate reference to Plumed.o problem reasserts itself when
compiling with GPU as the make install step re-runs cmake. The solution
here is to follow my previous protocol then after running the make install
step you delete the duplicate reference again and run the make install
step again. This is now with gromacs-5.0.4 and plumed-2.1.3 using default
compilers rather than specifying any.

>
>> On Thursday, June 11, 2015 at 4:30:41 PM UTC+1, James Krieger wrote:
>> I've found a work-around: using -pe openmpi #nodes with -l dedicated
#threads/node (24 in my case) and OMP_NUM_THREADS #threads/nodes.
>>
>>> On Wednesday, June 10, 2015 at 4:19:49 PM UTC+1, James Krieger wrote:
>>> Something's still not right. At this point GROMACS is MPI-aware and
can spread across multiple computers (nodes) when submitted to SGE
with -pe openmpi in the submission script. However when adding asking
it to use plumed for metad it fails unless it stays on a single
machine (specified with -pe smp). It's not a problem of plumed not
being compiled in MPI mode as using plumed to report on CVs without
metad works across multiple nodes.
>>>
>>> On Wednesday, June 10, 2015 at 1:38:19 PM UTC+1, James Krieger wrote:
>>> Actually that solution wasn't quite right because I didn't have the
mpi  compilers set up properly. That resulted in gromacs not being
mpi-aware but rather launching a separate mdrun_mpi process on each
node requested.
>>>
>>> Instead here's an updated solution that uses the default mpicc and
mpicxx wrappers (from openmpi-1.5.4 on my system).
>>>
>>> 1. configure/make/install plumed with addition of -fPIC to CFLAGS in
Makefile.conf before making (plumed-2.1.2 appears to need to be built
in the src directory)
>>>
>>> tar -xvzf plumed-2.1.2.tgz
>>> mv plumed-2.1.2 plumed-2.1.2-src
>>> mkdir plumed-2.1.2-install
>>> cd plumed-2.1.2-src
>>> ./configure --prefix=/lmb/home/jkrieger/
>>> bin/plumed-2.1.2-install/ CC=mpicc CXX=mpicxx
>>> manually add -fPIC to CFLAGS in Makefile.conf (done using vi)
>>> make VERBOSE=1 | & tee m.txt
>>> make install VERBOSE=1 | & tee mi.txt
>>> update PATH, LD_LIBRARY_PATH and PLUMED_KERNEL (added to ~/.login on
my system and applied by logging out and back in again)
>>>
>>> 2. patch plumed onto gromacs in --runtime mode (as per recommendation
of GB)
>>>
>>> cd ~/bin
>>> cp -r gromacs-5.0.4-src/ gromacs-5.0.4-src-plumed/
>>> mkdir gromacs-5.0.4-build-plumed
>>> mkdir gromacs-5.0.4-install-plumed
>>> cd gromacs-5.0.4-src-plumed/
>>> plumed patch -p --runtime
>>>
>>> 3. configure/make/install gromacs with separate src/build/install
directories (as per recommendation of MA) with removal of duplicate
reference to Plumed.o from
build-dir/src/gromacs/CMakeFiles/libgromacs.dir/link.txt (as per
recommendation of GB)
>>>
>>> cd ../gromacs-5.0.4-build-plumed
>>> cmake -DGMX_MPI=ON ../gromacs-5.0.4-src-plumed/
-DGMX_BUILD_OWN_FFTW=ON
-DCMAKE_INSTALL_PREFIX=/lmb/home/jkrieger/bin/gromacs-5.0.4-install-plumed
-DCMAKE_C_COMPILER=mpicc -DCMAKE_CXX_COMPILER=mpicxx
>>> remove duplicate reference to Plumed.o from
build-dir/src/gromacs/CMakeFiles/libgromacs.dir/link.txt (again with
vi)
>>> make VERBOSE=1 | & tee m.txt
>>> make install VERBOSE=1 | & tee mi.txt
>>> update PATH and LD_LIBRARY_PATH (vi ~/.login, log out, log in again)
>>>
>>>
>>> On Tuesday, June 9, 2015 at 7:23:14 PM UTC+1, James Krieger wrote:
>>> Here is the solution. Thanks to both Giovanni Bussi and Mark Abraham
for your help.
>>>
>>> 0. configure/make/install mpi compilers (separate src, build and
install directories are used as suggested by MA)
>>>
>>> tar -xvzfc mpich-3.1.4.tar.gz mpich-3.1.4-src
>>> mkdir mpich-3.1.4-build
>>> mkdir mpich-3.1.4-install
>>> cd mpich-3.1.4-build
>>> ../mpich-3.1.4-src/configure
--prefix=/lmb/home/jkrieger/bin/mpich-3.1.4-install | & tee c.txt
>>> make VERBOSE=1 | & tee m.txt
>>> make install VERBOSE=1 | & tee mi.txt
>>>
>>> 1. configure/make/install plumed with addition of -fPIC to CFLAGS in
Makefile.conf before making (plumed-2.1.2 appears to need to be built
in the src directory)
>>>
>>> tar -xvzfc plumed-2.1.2.tgz plumed-2.1.2-src
>>> mkdir plumed-2.1.2-install
>>> cd plumed-2.1.2-src
>>> ./configure --prefix=/lmb/home/jkrieger/bin/plumed-2.1.2-install/
CC=/lmb/home/jkrieger/bin/mpich-3.1.4-install/bin/mpicc
CXX=/lmb/home/jkrieger/bin/mpich-3.1.4-install/bin/mpicxx
>>> manually add -fPIC to CFLAGS in Makefile.conf (done using vi)
>>> make VERBOSE=1 | & tee m.txt
>>> make install VERBOSE=1 | & tee mi.txt
>>> update PATH and LD_LIBRARY_PATH (added to ~/.login on my system and
applied by logging out and back in again)
>>>
>>> 2. patch plumed onto gromacs in --runtime mode (as per recommendation
of GB)
>>>
>>> cd ~/bin
>>> cp -r gromacs-5.0.4-src/ gromacs-5.0.4-src-plumed/
>>> mkdir gromacs-5.0.4-build-plumed
>>> mkdir gromacs-5.0.4-install-plumed
>>> cd gromacs-5.0.4-src-plumed/
>>> plumed patch -p --runtime
>>>
>>> 3. configure/make/install gromacs with separate src/build/install
directories (as per recommendation of MA) with removal of duplicate
reference to Plumed.o from
build-dir/src/gromacs/CMakeFiles/libgromacs.dir/link.txt (as per
recommendation of GB)
>>>
>>> cd ../gromacs-5.0.4-build-plumed
>>> cmake -DGMX_MPI=ON ../gromacs-5.0.4-src-plumed/
-DGMX_BUILD_OWN_FFTW=ON
-DCMAKE_INSTALL_PREFIX=/lmb/home/jkrieger/bin/gromacs-5.0.4-install-plumed
-DCMAKE_C_COMPILER=/lmb/home/jkrieger/bin/mpich-3.1.4-install/bin/mpicc
-DCMAKE_CXX_COMPILER=/lmb/home/jkrieger/bin/mpich-3.1.4-install/bin/mpicxx
>>> remove duplicate reference to Plumed.o from
build-dir/src/gromacs/CMakeFiles/libgromacs.dir/link.txt (again with
vi)
>>> make VERBOSE=1 | & tee m.txt
>>> make install VERBOSE=1 | & tee mi.txt
>>> update PATH and LD_LIBRARY_PATH (vi ~/.login, log out, log in again)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-users/attachments/20160811/50ccae13/attachment-0001.html>


More information about the gromacs.org_gmx-users mailing list