[gmx-users] gromacs 4.6.7 plumed -Segmentation fault

Mark Abraham mark.j.abraham at gmail.com
Fri Oct 23 19:06:49 CEST 2015


Hi,

I don't know what's going to work. Every machine is precious individual
snowflake. Try it :-)

Mark

On Fri, Oct 23, 2015 at 7:04 PM Ana Marija <sokovic.anamarija at gmail.com>
wrote:

> thanks, I do I need to set?
>
> export CFLAGS="-static"
> export CXXFLAGS="-static"
>
> before cmake step?
>
> On Fri, Oct 23, 2015 at 12:03 PM, Mark Abraham <mark.j.abraham at gmail.com>
> wrote:
>
>> Hi,
>>
>> I think -DGMX_BUILD_SHARED_EXE=off is supposed to handle this - see
>> http://www.gromacs.org/Documentation/Installation_Instructions_5.0#static-linking.
>> Or there are environment variables you can set that force the Cray tools to
>> do dynamic vs static linking - check your local docs.
>>
>> As you can see on that Redmine, we're trying to get Cray to be useful
>> solving these problems in a general way, but progress is slow :-(
>>
>> Mark
>>
>> On Fri, Oct 23, 2015 at 6:17 PM Ana Marija <sokovic.anamarija at gmail.com>
>> wrote:
>>
>>> or should I do just this before cmake step?
>>>
>>> export CFLAGS="-static"
>>> export CXXFLAGS="-static"
>>>
>>>
>>>
>>> On Fri, Oct 23, 2015 at 11:12 AM, Ana Marija <
>>> sokovic.anamarija at gmail.com> wrote:
>>>
>>>> the above was reported here as a bug, but I am not sure where and how
>>>> should I put this flag: CFLAGS=CXXFLAGS=-static
>>>>
>>>> http://redmine.gromacs.org/issues/1641
>>>>
>>>> does is just go under cmake like: -DCFLAGS=CXXFLAGS=-static or?
>>>>
>>>> On Fri, Oct 23, 2015 at 10:51 AM, Ana Marija <
>>>> sokovic.anamarija at gmail.com> wrote:
>>>>
>>>>> HI Everybody,
>>>>>
>>>>> I got cmake/3.3.2 installed so I decided to install gromacs 5.0.4 with
>>>>> plumed 2.2.0
>>>>>
>>>>> but I got this error during "make" step of gromacs:
>>>>>
>>>>> 100%] Linking CXX executable ../../bin/gmx_mpi
>>>>> /usr/lib/../lib64/librt.a(clock_gettime.o): In function
>>>>> `hp_timing_gettime':
>>>>> /usr/src/packages/BUILD/glibc-2.11.3/rt/../sysdeps/unix/clock_gettime.c:65:
>>>>> undefined reference to `_dl_cpuclock_offset'
>>>>> collect2: error: ld returned 1 exit status
>>>>> make[2]: *** [bin/gmx_mpi] Error 1
>>>>> make[1]: *** [src/programs/CMakeFiles/gmx.dir/all] Error 2
>>>>>
>>>>> my recipe is bellow and I am doing this on Cray XE6 machine, please
>>>>> let me know what I can be doing wrong:
>>>>>
>>>>> module swap PrgEnv-cray PrgEnv-gnu
>>>>> module load fftw/3.3.4.0
>>>>> module load cray-mpich/7.0.5
>>>>> module load gsl/1.15
>>>>> module load cmake
>>>>> #in /lustre/beagle2/ams/new/gromacs make directory lib2
>>>>>
>>>>> mkdir lib2
>>>>>
>>>>> ams at login1:/lustre/beagle2/ams/lib2>ln -s
>>>>> /opt/cray/libsci/13.0.1/GNU/49/abudhabi/lib/libsci_gnu.a libblas.a
>>>>> ams at login1:/lustre/beagle2/ams/lib2>ln -s
>>>>> /opt/cray/libsci/13.0.1/GNU/49/abudhabi/lib/libsci_gnu.a liblapack.a
>>>>>
>>>>> #download it from here: http://www.plumed-code.org/get-it
>>>>> tar zxvf plumed-2.2.0.tgz
>>>>> cd plumed-2.2.0
>>>>>
>>>>> ./configure CC=cc CXX=CC F77=ftn
>>>>> LDFLAGS="-L/lustre/beagle2/ams/new/gromacs/lib2"
>>>>> --prefix=/lustre/beagle2/ams/new/gromacs/plumed-2.2.0 --enable-mpi
>>>>> --disable-basic-warnings --disable-openmp
>>>>>
>>>>> <strong>###Makefile.conf should look like this, if not please delete
>>>>> all extra stuff before proceeding to make step</strong>
>>>>> CC=cc
>>>>> FC=gfortran
>>>>> LDF90=gfortran
>>>>> CFLAGS=-g -O2 -fPIC
>>>>> CXX=CC
>>>>> CXXFLAGS=-O -fPIC
>>>>> CXXFLAGS_NOOPENMP=-O -fPIC
>>>>> CPPFLAGS= -DPACKAGE_NAME=\"PLUMED\" -DPACKAGE_TARNAME=\"plumed\"
>>>>> -DPACKAGE_VERSION=\"2\" -DPACKAGE_STRING=\"PLUMED\ 2\"
>>>>> -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DSTDC_HEADERS=1
>>>>> -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
>>>>> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1
>>>>> -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -D__PLUMED_HAS_EXTERNAL_BLAS=1
>>>>> -D__PLUMED_HAS_EXTERNAL_LAPACK=1 -D__PLUMED_HAS_MOLFILE_PLUGINS=1
>>>>> -D__PLUMED_HAS_MPI=1 -D__PLUMED_HAS_CLOCK_GETTIME=1
>>>>> -D__PLUMED_HAS_GETTIMEOFDAY=1 -D__PLUMED_HAS_READDIR_R=1
>>>>> -D__PLUMED_HAS_CREGEX=1 -D__PLUMED_HAS_DLOPEN=1 -D__PLUMED_HAS_EXECINFO=1
>>>>> -D__PLUMED_HAS_ZLIB=1 -DNDEBUG=1 -D_REENTRANT=1
>>>>> LDFLAGS=
>>>>> DYNAMIC_LIBS=-lstdc++ -lz -ldl  -L/lustre/beagle2/ams/new/gromacs/lib2
>>>>> LIBS=-ldl
>>>>> SOEXT=
>>>>> LD=CC
>>>>> LDSO=CC -shared
>>>>> GCCDEP=CC
>>>>> prefix=/lustre/beagle2/ams/new/gromacs/plumed-2.2.0
>>>>> program_transform_name=s,x,x,
>>>>> program_can_run_mpi=yes
>>>>> program_can_run=yes
>>>>> LD_RO=ld -r -o
>>>>> exec_prefix=${prefix}
>>>>> bindir=${exec_prefix}/bin
>>>>> libdir=${exec_prefix}/lib
>>>>> includedir=${prefix}/include
>>>>> datarootdir=${prefix}/share
>>>>> datadir=${datarootdir}
>>>>> docdir=${datarootdir}/doc/plumed
>>>>> htmldir=${docdir}
>>>>> program_name=plumed
>>>>> ###
>>>>>
>>>>> make
>>>>> make install
>>>>>
>>>>> export PATH=/lustre/beagle2/ams/new/gromacs/plumed-2.2.0/bin:$PATH
>>>>>
>>>>> #1. Make a directory for modulefiles (e.g.
>>>>> /lustre/beagle2/ams/new/modulefiles/)
>>>>> #2. Copy file: cp
>>>>> /lustre/beagle2/ams/new/gromacs/plumed-2.2.0/lib/plumed/modulefile
>>>>> /lustre/beagle2/ams/new/modulefiles/plumed/2.2.0/
>>>>> #3. type "module use /lustre/beagle2/ams/new/modulefiles/"
>>>>> #4. type "module load plumed/2.2.0"
>>>>>
>>>>> export PATH=/lustre/beagle2/ams/new/gromacs/plumed-2.2.0/bin:$PATH
>>>>> module use /lustre/beagle2/ams/new/modulefiles/
>>>>> module load plumed/2.2.0
>>>>>
>>>>> ### instal gromacs-5.0.4
>>>>> wget ftp://ftp.gromacs.org/pub/gromacs/gromacs-5.0.4.tar.gz
>>>>> tar zxvf gromacs-5.0.4.tar.gz
>>>>> cd gromacs-5.0.4/
>>>>> ams at login1:/lustre/beagle2/ams/new/gromacs/gromacs-5.0.4>plumed-patch
>>>>> -p --static
>>>>>
>>>>>
>>>>> PLUMED patching tool
>>>>>
>>>>> 1) amber14        4) gromacs-5.0.4    7) namd-2.8
>>>>> 2) gromacs-4.5.7    5) gromacs-5.1.0    8) namd-2.9
>>>>> 3) gromacs-4.6.7    6) lammps-6Apr13    9) qespresso-5.0.2
>>>>>
>>>>> Choose the best matching code/version:4
>>>>>
>>>>> mkdir build
>>>>> cd build
>>>>>
>>>>>
>>>>> export BUILD_WITH_INSTALL_RPATH=TRUE
>>>>> export INSTALL_RPATH=""
>>>>> export SKIP_BUILD_RPATH=TRUE
>>>>> export
>>>>> CMAKE_LIBRARY_PATH="/lustre/beagle2/ams/new/gromacs/lib:$CMAKE_LIBRARY_PATH"
>>>>>
>>>>> #in /lustre/beagle2/ams/new/gromacs make directory lib
>>>>>
>>>>> ams at login1:/lustre/beagle2/ams/new/gromacs/lib>ln -s
>>>>> /opt/cray/libsci/13.0.1/GNU/49/abudhabi/lib/libsci_gnu.a libblas.a
>>>>> ams at login1:/lustre/beagle2/ams/new/gromacs/lib>ln -s
>>>>> /opt/cray/libsci/13.0.1/GNU/49/abudhabi/lib/libsci_gnu.a liblapack.a
>>>>>
>>>>> cd /lustre/beagle2/ams/new/gromacs/gromacs-5.0.4/build
>>>>>
>>>>> cmake ../ -DFFTWF_INCLUDE_DIR=/opt/fftw/3.3.4.0/abudhabi/include
>>>>> -DFFTWF_LIBRARY=/opt/fftw/3.3.4.0/abudhabi/lib/libfftw3f.a
>>>>> -DMPI_LIBRARY="/opt/cray/mpt/7.0.5/gni/mpich2-gnu/49/lib/libmpich.a;/opt/cray/mpt/7.0.5/gni/mpich2-gnu/49/lib/libfmpich_gnu_49.a;/opt/cray/mpt/7.0.5/gni/mpich2-gnu/49/lib/libmpl.a;/opt/cray/pmi/default/lib64/libpmi.a;/opt/cray/rca/default/lib64/librca.a;/opt/gcc/4.9.2/snos/lib64/libgfortran.a;/opt/gcc/4.9.2/snos/lib64/libstdc++.a;/opt/cray/alps/default/lib64/libalpslli.a;/opt/cray/alps/default/lib64/libalpsutil.a;/opt/gcc/4.9.2/snos/lib64/libgomp.a;/opt/gcc/4.9.2/snos/lib64/libquadmath.a;/opt/cray/ugni/default/lib64/libugni.a;/opt/cray/udreg/default/lib64/libudreg.a;/opt/cray/xpmem/default/lib64/libxpmem.a;/opt/cray/wlm_detect/default/lib64/libwlm_detect.a;/lib64/libdl.so.2"
>>>>> -DMPI_INCLUDE_PATH="/opt/cray/mpt/7.0.5/gni/mpich2-gnu/49/include"
>>>>> -DCMAKE_CXX_COMPILER=CC -DCMAKE_C_COMPILER=cc -DGMX_FORCE_CXX=ON
>>>>> -DGMX_DOUBLE=OFF -DGMX_PREFER_STATIC_LIBS=ON -DGMX_GPU=OFF -DGMX_MPI=ON
>>>>> -DCMAKE_INSTALL_PREFIX=/lustre/beagle2/ams/new/gromacs/gromacs-5.0.4/build
>>>>> -DGMX_X11=OFF -DGMX_BLAS_USER=/lustre/beagle2/ams/new/gromacs/lib/libblas.a
>>>>> -DGMX_LAPACK_USER=/lustre/beagle2/ams/new/gromacs/lib/liblapack.a
>>>>> -DCMAKE_SKIP_RPATH=ON
>>>>>
>>>>>
>>>>> make
>>>>> make install
>>>>>
>>>>>
>>>>>
>>>>> On Thu, Oct 22, 2015 at 12:27 PM, Ana Marija <
>>>>> sokovic.anamarija at gmail.com> wrote:
>>>>>
>>>>>> Thanks everybody for all your help!
>>>>>>
>>>>>> On Thu, Oct 22, 2015 at 12:20 PM, Mark Abraham <
>>>>>> mark.j.abraham at gmail.com> wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> On Thu, Oct 22, 2015 at 6:58 PM Ana Marija <
>>>>>>> sokovic.anamarija at gmail.com> wrote:
>>>>>>>
>>>>>>>> I just tried to install it with:
>>>>>>>> cmake ../ -DFFTWF_INCLUDE_DIR=/opt/fftw/3.3.4.0/abudhabi/include
>>>>>>>> -DFFTWF_LIBRARY=/opt/fftw/3.3.4.0/abudhabi/lib/libfftw3f.a
>>>>>>>> -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc -DGMX_DOUBLE=OFF
>>>>>>>> -DGMX_GPU=OFF -DGMX_MPI=OFF
>>>>>>>> -DCMAKE_INSTALL_PREFIX=/lustre/beagle2/ams/gro/gromacs-4.6.7/build
>>>>>>>> -DGMX_X11=OFF
>>>>>>>>
>>>>>>>> but the error is the same as above.
>>>>>>>>
>>>>>>>
>>>>>>> It can't be if you've done it properly. Use a new, empty build
>>>>>>> directory.
>>>>>>>
>>>>>>>
>>>>>>>> My goal with this installation (without cross compiler) was to use
>>>>>>>> it to generate input files and than use another installation of gromacs
>>>>>>>> compiled with cross compilers to complete the run. Where I would use the
>>>>>>>> same version of gromacs  in both cases, 4.6.7. Can you please confirm me
>>>>>>>> that this is acceptable approach?
>>>>>>>>
>>>>>>>
>>>>>>> Yes, but needlessly complex. You can run grompp anywhere, copy the
>>>>>>> file to the Cray, and use the resulting .tpr on the compute nodes, like I
>>>>>>> said a while ago.
>>>>>>>
>>>>>>>
>>>>>>>> The reason why I can't use newer version of gromacs is that I only
>>>>>>>> have cmake 2.8.4 on this machine and it is impossible to install newer
>>>>>>>> version of cmake because it is tied to gnu version we got from Cray etc.
>>>>>>>>
>>>>>>>
>>>>>>> Perhaps Cray supplied a cmake, but it doesn't run on the compute
>>>>>>> nodes, and has nothing at all to do with the back end compilers, and your
>>>>>>> system admins can and should be willing to download and install a more
>>>>>>> recent cmake for you and everybody else :-)
>>>>>>>
>>>>>>> Mark
>>>>>>>
>>>>>>>
>>>>>>>> On Thu, Oct 22, 2015 at 11:51 AM, Szilárd Páll <
>>>>>>>> sin.pecado at gmail.com> wrote:
>>>>>>>>
>>>>>>>>> On Thu, Oct 22, 2015 at 6:34 PM, Ana Marija <
>>>>>>>>> sokovic.anamarija at gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> I installed it via:
>>>>>>>>>> cmake ../ -DFFTWF_INCLUDE_DIR=/opt/fftw/3.3.4.0/abudhabi/include
>>>>>>>>>> -DFFTWF_LIBRARY=/opt/fftw/3.3.4.0/abudhabi/lib/libfftw3f.a
>>>>>>>>>> -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc -DGMX_DOUBLE=OFF
>>>>>>>>>> -DGMX_PREFER_STATIC_LIBS=ON -DGMX_GPU=OFF -DGMX_MPI=OFF
>>>>>>>>>> -DCMAKE_INSTALL_PREFIX=/lustre/beagle2/ams/gro/gromacs-4.6.7/build
>>>>>>>>>> -DGMX_X11=OFF -DCMAKE_SKIP_RPATH=ON
>>>>>>>>>>
>>>>>>>>>> then I was running it on login nodes via:
>>>>>>>>>>
>>>>>>>>>> /lustre/beagle2/ams/gro/gromacs-4.6.7/build/bin/grompp -f
>>>>>>>>>> /lustre/beagle2/ruisun/MYCO/Set-1/input/grompp.mdp -c
>>>>>>>>>> /lustre/beagle2/ruisun/MYCO/Set-1/input/initial.gro -p
>>>>>>>>>> /lustre/beagle2/ruisun/MYCO/Set-1/input/topol.top -n
>>>>>>>>>> /lustre/beagle2/ruisun/MYCO/Set-1/input/index.ndx -o ttmeta1.tpr
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> but I didn't get .tpr file, and output was this:
>>>>>>>>>> Back Off! I just backed up mdout.mdp to ./#mdout.mdp.2#
>>>>>>>>>> Generated 1081 of the 1081 non-bonded parameter combinations
>>>>>>>>>> Generating 1-4 interactions: fudge = 0.5
>>>>>>>>>> Generated 994 of the 1081 1-4 parameter combinations
>>>>>>>>>>
>>>>>>>>>> -------------------------------------------------------
>>>>>>>>>> Program grompp, VERSION 4.6.7
>>>>>>>>>> Source code file:
>>>>>>>>>> /lustre/beagle2/ams/gro/gromacs-4.6.7/src/kernel/toppush.c, line: 1803
>>>>>>>>>>
>>>>>>>>>> Fatal error:
>>>>>>>>>> [ file tip3p.itp, line 39 ]:
>>>>>>>>>> Atom index (1) in settles out of bounds (1-0).
>>>>>>>>>> This probably means that you have inserted topology section
>>>>>>>>>> "settles"
>>>>>>>>>> in a part belonging to a different molecule than you intended to.
>>>>>>>>>> In that case move the "settles" section to the right molecule.
>>>>>>>>>>
>>>>>>>>>> can you please advise what should I do in this situation?
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> As Justin said, this isn't an issue with the GROMACS build anymore
>>>>>>>>> (but rather with the inputs). So it seems that the original problem is
>>>>>>>>> solved - unless you really need to run grompp on the compute nodes.
>>>>>>>>>
>>>>>>>>> BTW, I hope you know that 4.6.7 is a rather old and outdated
>>>>>>>>> version; the 5.0 and 5.1 series has been released since and the former is
>>>>>>>>> AFAIK supported by PLUMED!
>>>>>>>>>
>>>>>>>>> Cheers,
>>>>>>>>> --
>>>>>>>>> Szilárd
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Thu, Oct 22, 2015 at 11:06 AM, Ana Marija <
>>>>>>>>>> sokovic.anamarija at gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> so is it ok to try this?
>>>>>>>>>>> cmake ../ -DFFTWF_INCLUDE_DIR=/opt/fftw/3.3.4.0/abudhabi/include
>>>>>>>>>>> -DFFTWF_LIBRARY=/opt/fftw/3.3.4.0/abudhabi/lib/libfftw3f.a
>>>>>>>>>>> -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc -DGMX_DOUBLE=OFF
>>>>>>>>>>> -DGMX_PREFER_STATIC_LIBS=ON -DGMX_GPU=OFF -DGMX_MPI=OFF
>>>>>>>>>>> -DCMAKE_INSTALL_PREFIX=/lustre/beagle2/ams/gro/gromacs-4.6.7/build
>>>>>>>>>>> -DGMX_X11=OFF -DCMAKE_SKIP_RPATH=ON
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Thu, Oct 22, 2015 at 11:03 AM, Mark Abraham <
>>>>>>>>>>> mark.j.abraham at gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hi,
>>>>>>>>>>>>
>>>>>>>>>>>> Your blas and lapack were compiled with gfortran, but in a way
>>>>>>>>>>>> that they require that one links further dependencies to use them later on.
>>>>>>>>>>>> So compile them better, or use dynamic linking.
>>>>>>>>>>>>
>>>>>>>>>>>> But 99.9% of GROMACS users do not need to get involved with
>>>>>>>>>>>> this, so just leave GMX_BLAS_USER and GMX_BLAS_LAPACK unset and GROMACS
>>>>>>>>>>>> will use its internal versions.
>>>>>>>>>>>>
>>>>>>>>>>>> Mark
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>


More information about the gromacs.org_gmx-users mailing list