Project

General

Profile

Bug #1611

gmx freevolume segfaults and dumps core

Added by Michael Brunsteiner about 3 years ago. Updated about 3 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
analysis tools
Target version:
Affected version - extra info:
5.0-5.0.2 (also 4.5.* and 4.6.*, but gmx-freevolume does not exist there)
Affected version:
Difficulty:
uncategorized
Close

Description

trying to calc the free volume from trajectories of a system of a polymer blend
simulated at T=300K using gmx 5.0 (with a gaff type of FF) gmx freevolume dies with
a segfault and dumps core, no further diagnostic output is given to stderr ...

i get. e.g.:

/opt/gridengine/default/spool/node-0-11/job_scripts/63670: line 13: 27425 Segmentation fault      (core dumped) 
gmx freevolume -f md03-eec40x14-ph298.trr -s md03-eec40x14-ph298.tpr -n md03-eec40x14-ph298.ndx -o fv05-md03-eec40x14-ph298 -radius 0.05 -dt 20 -e 20000 >&pv05-stdout-md03-eec40x14-ph298

this behaviour is quite unpredictable, it does not happen always, but only for about two thirds of
the systems i used, with different compounds, and after different lengths of trajectories read...

below is the stout/sterr from:

gmx freevolume -f md03-psa40x12-li230.trr -s md03-psa40x12-li230.tpr -n md03-psa40x12-li230.ndx -o xxx -radius 0.05 -dt 20 -e 20000

GROMACS:    gmx freevolume, VERSION 5.0

GROMACS is written by:
Emile Apol         Rossen Apostolov   Herman J.C. Berendsen Par Bjelkmar       
Aldert van Buuren  Rudi van Drunen    Anton Feenstra     Sebastian Fritsch  
Gerrit Groenhof    Christoph Junghans Peter Kasson       Carsten Kutzner    
Per Larsson        Justin A. Lemkul   Magnus Lundborg    Pieter Meulenhoff  
Erik Marklund      Teemu Murtola      Szilard Pall       Sander Pronk       
Roland Schulz      Alexey Shvetsov    Michael Shirts     Alfons Sijbers     
Peter Tieleman     Christian Wennberg Maarten Wolf       
and the project leaders:
Mark Abraham, Berk Hess, Erik Lindahl, and David van der Spoel

Copyright (c) 1991-2000, University of Groningen, The Netherlands.
Copyright (c) 2001-2014, The GROMACS development team at
Uppsala University, Stockholm University and
the Royal Institute of Technology, Sweden.
check out http://www.gromacs.org for more information.

GROMACS is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License
as published by the Free Software Foundation; either version 2.1
of the License, or (at your option) any later version.

GROMACS:      gmx freevolume, VERSION 5.0
Executable:   /home/micb/local/bin-gromacs-5.0/bin/gmx
Library dir:  /home/micb/local/bin-gromacs-5.0/share/gromacs/top
Command line:
  gmx freevolume -f md03-psa40x12-li230.trr -s md03-psa40x12-li230.tpr -n md03-psa40x12-li230.ndx -o xxx -radius 0.05 -dt 20 -e 20000

Reading file md03-psa40x12-li230.tpr, VERSION 5.0 (single precision)
Reading file md03-psa40x12-li230.tpr, VERSION 5.0 (single precision)

WARNING: Masses and atomic (Van der Waals) radii will be guessed
         based on residue and atom names, since they could not be
         definitively assigned from the information in your input
         files. These guessed numbers might deviate from the mass
         and radius of the atom type. Please check the output
         files if necessary.

NOTE: From version 5.0 gmx uses the Van der Waals radii
from the source below. This means the results may be different
compared to previous GROMACS versions.

++++ PLEASE READ AND CITE THE FOLLOWING REFERENCE ++++
A. Bondi
van der Waals Volumes and Radii
J. Phys. Chem. 68 (1964) pp. 441-451
-------- -------- --- Thank You --- -------- --------

trn version: GMX_trn_file (single precision)
^MReading frame       0 time    0.000   ^MSkipping frame      1 time    2.000   ^MSkipping frame      2 time    4.000   ^MSkipping frame      3 time    6.000   
^MSkipping frame      4 time    8.000   ^MSkipping frame      5 time   10.000   ^MSkipping frame      6 time   12.000   ^MSkipping frame      7 time   14.000   
^MSkipping frame      8 time   16.000   ^MSkipping frame      9 time   18.000   ^MReading frame      10 time   20.000   ^MSkipping frame     11 time   22.000   
^MSkipping frame     12 time   24.000   ^MSkipping frame     13 time   26.000   ^MSkipping frame     14 time   28.000   ^MSkipping frame     15 time   30.000   
^MSkipping frame     16 time   32.000   ^MSkipping frame     17 time   34.000   ^MSkipping frame     18 time   36.000   ^MSkipping frame     19 time   38.000   
^MReading frame      20 time   40.000   ^MReading frame      30 time   60.000   ^MReading frame      40 time   80.000   ^MReading frame      50 time  100.000   
^MReading frame      60 time  120.000   ^MReading frame      70 time  140.000   ^MReading frame      80 time  160.000   ^MReading frame      90 time  180.000   
^MReading frame     100 time  200.000   ^MReading frame     110 time  220.000   ^MReading frame     120 time  240.000   ^MReading frame     130 time  260.000   
^MReading frame     140 time  280.000   ^MReading frame     150 time  300.000   ^MReading frame     160 time  320.000   ^MReading frame     170 time  340.000   
^MReading frame     180 time  360.000   ^MReading frame     190 time  380.000   ^MReading frame     200 time  400.000   ^MReading frame     300 time  600.000   
^MReading frame     400 time  800.000   ^MReading frame     500 time 1000.000   ^MReading frame     600 time 1200.000   
[1]+  Segmentation fault      gmx freevolume -f md03-psa40x12-li230.trr -s md03-psa40x12-li230.tpr -n md03-psa40x12-li230.ndx -o xxx -radius 0.05 -dt 20 -e 20000 >&er-xxx

regards
michael

test-freevolume-segfault.tgz (4.87 MB) test-freevolume-segfault.tgz Michael Brunsteiner, 10/02/2014 01:39 PM

Associated revisions

Revision e16a45d7 (diff)
Added by Teemu Murtola about 3 years ago

Improve analysis nbsearch grid mapping

Now the analysis neighborhood search implements its own version of
put_atoms_in_triclinic_unitcell(). While computing the index of the
correct grid cell, it is relatively easy to produce also the coordinates
that lay within that cell instead of using a separate call. This
provides two benefits:
- It avoids rare rounding problems if put_atoms_in_triclinic_unitcell()
would put the atom right at the edge of the box, but the mapping code
would consider it outside the box, causing out-of-range grid cell
index to be generated.
- It allows to customize the grid mapping more freely (e.g., to create
grids that are not periodic).

Backported from master with minor changes, fixes #1611. Kept commit
message the same; the second point will be only relevant for master.

Change-Id: Ib7602fa49a1b8f7882a63843322786b3e51e8e32
(cherry-picked from b3e2e82 in master)

History

#1 Updated by Mark Abraham about 3 years ago

  • Description updated (diff)

#2 Updated by David van der Spoel about 3 years ago

If it is not reproducible it is not possible to debug, but if it is please upload an example.

#3 Updated by Michael Brunsteiner about 3 years ago

i said its not predictible as in it happens for some systmes/trajectories
but not for others, doesn't mean its not "reproducible" ... so here we go:

the hardware is a rockscluster with NO GPUs and:

uname -a
Linux hugo.tugraz.at 2.6.18-308.4.1.el5 #1 SMP Tue Apr 17 17:08:00 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux

and

lsb_release -a
LSB Version: :core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch
Distributor ID: CentOS
Description: CentOS release 5.8 (Final)
Release: 5.8
Codename: Final

below are input and stdout/err attached are all files ...

prompt> gmx freevolume -f test.trr -s md03-psa40x12-li230.tpr -n md03-psa40x12-li230.ndx -o xxx -radius 0.05

GROMACS: gmx freevolume, VERSION 5.0

GROMACS is written by:
Emile Apol Rossen Apostolov Herman J.C. Berendsen Par Bjelkmar
Aldert van Buuren Rudi van Drunen Anton Feenstra Sebastian Fritsch
Gerrit Groenhof Christoph Junghans Peter Kasson Carsten Kutzner
Per Larsson Justin A. Lemkul Magnus Lundborg Pieter Meulenhoff
Erik Marklund Teemu Murtola Szilard Pall Sander Pronk
Roland Schulz Alexey Shvetsov Michael Shirts Alfons Sijbers
Peter Tieleman Christian Wennberg Maarten Wolf
and the project leaders:
Mark Abraham, Berk Hess, Erik Lindahl, and David van der Spoel

Copyright (c) 1991-2000, University of Groningen, The Netherlands.
Copyright (c) 2001-2014, The GROMACS development team at
Uppsala University, Stockholm University and
the Royal Institute of Technology, Sweden.
check out http://www.gromacs.org for more information.

GROMACS is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License
as published by the Free Software Foundation; either version 2.1
of the License, or (at your option) any later version.

GROMACS: gmx freevolume, VERSION 5.0
Executable: /home/micb/local/bin-gromacs-5.0/bin/gmx
Library dir: /home/micb/local/bin-gromacs-5.0/share/gromacs/top
Command line:
gmx freevolume -f test.trr -s md03-psa40x12-li230.tpr -n md03-psa40x12-li230.ndx -o xxx -radius 0.05

Reading file md03-psa40x12-li230.tpr, VERSION 5.0 (single precision)
Reading file md03-psa40x12-li230.tpr, VERSION 5.0 (single precision)

WARNING: Masses and atomic (Van der Waals) radii will be guessed
based on residue and atom names, since they could not be
definitively assigned from the information in your input
files. These guessed numbers might deviate from the mass
and radius of the atom type. Please check the output
files if necessary.

NOTE: From version 5.0 gmx uses the Van der Waals radii
from the source below. This means the results may be different
compared to previous GROMACS versions.

+++ PLEASE READ AND CITE THE FOLLOWING REFERENCE +++
A. Bondi
van der Waals Volumes and Radii
J. Phys. Chem. 68 (1964) pp. 441-451
-------- -------- --- Thank You --- -------- --------

cutoff = 0.23 nm
probe_radius = 0.05 nm
seed = -1
ninsert = 1000 probes per nm^3
trn version: GMX_trn_file (single precision)
Reading frame 0 time 1240.000
Reading frame 10 time 1260.000 Segmentation fault

#4 Updated by Michael Brunsteiner about 3 years ago

I should add that varying -radius from 0.05 to 0.1 or 0.0
does not change things ... some outcome:

Reading frame 10 time 1260.000 Segmentation fault

#5 Updated by David van der Spoel about 3 years ago

Does not crash for me on Mac or Linux (Centos 6.3). Could it bay that you used an old compiler?

I have also run it through valgrind on Linux without finding any issues (except some MPI stuff that is irrelevant).

Maybe you can run it through valgrind on one of your machines?

valgrind gmx freevolume -f test.trr -s md03-psa40x12-li230.tpr -n md03-psa40x12-li230.ndx -o xxx -radius 0.05

#6 Updated by Michael Brunsteiner about 3 years ago

the output i posted earlier was from our rocks cluser, see below for the specs ...
i should add that i get exactly the same segfault when i perform the same
command with the same input files on my desktop which has g++ (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3 ...

specs on the desktop:

prompt> gmx --version
GROMACS: gmx, VERSION 5.0

GROMACS is written by:
Emile Apol Rossen Apostolov Herman J.C. Berendsen Par Bjelkmar
Aldert van Buuren Rudi van Drunen Anton Feenstra Sebastian Fritsch
Gerrit Groenhof Christoph Junghans Peter Kasson Carsten Kutzner
Per Larsson Justin A. Lemkul Magnus Lundborg Pieter Meulenhoff
Erik Marklund Teemu Murtola Szilard Pall Sander Pronk
Roland Schulz Alexey Shvetsov Michael Shirts Alfons Sijbers
Peter Tieleman Christian Wennberg Maarten Wolf
and the project leaders:
Mark Abraham, Berk Hess, Erik Lindahl, and David van der Spoel

Copyright (c) 1991-2000, University of Groningen, The Netherlands.
Copyright (c) 2001-2014, The GROMACS development team at
Uppsala University, Stockholm University and
the Royal Institute of Technology, Sweden.
check out http://www.gromacs.org for more information.

GROMACS is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License
as published by the Free Software Foundation; either version 2.1
of the License, or (at your option) any later version.

GROMACS: gmx, VERSION 5.0
Executable: /usr/local/gromacs-5.0/bin/gmx
Library dir: /usr/local/gromacs-5.0/share/gromacs/top
Command line:
gmx --version

Gromacs version: VERSION 5.0
Precision: single
Memory model: 64 bit
MPI library: thread_mpi
OpenMP support: enabled
GPU support: enabled
invsqrt routine: gmx_software_invsqrt(x)
SIMD instructions: SSE4.1
FFT library: fftw-3.3-sse2
RDTSCP usage: enabled
C++11 compilation: disabled
TNG support: enabled
Tracing support: disabled
Built on: Thu Jul 10 10:36:47 CEST 2014
Built by: root@rcpetemp1 [CMAKE]
Build OS/arch: Linux 3.2.0-65-generic x86_64
Build CPU vendor: GenuineIntel
Build CPU brand: Intel(R) Core(TM) i7 CPU 960 @ 3.20GHz
Build CPU family: 6 Model: 26 Stepping: 5
Build CPU features: apic clfsh cmov cx8 cx16 htt lahf_lm mmx msr nonstop_tsc pdcm popcnt pse rdtscp sse2 sse3 sse4.1 sse4.2 ssse3
C compiler: /usr/bin/cc GNU 4.6.3
C compiler flags: -msse4.1 -Wno-maybe-uninitialized -Wextra -Wno-missing-field-initializers -Wno-sign-compare -Wpointer-arith -Wall -Wno-unused -Wunused-value -Wunused-parameter -fomit-frame-pointer -funroll-all-loops -fexcess-precision=fast -Wno-array-bounds -O3 -DNDEBUG
C++ compiler: /usr/bin/c++ GNU 4.6.3
C++ compiler flags: -msse4.1 -Wextra -Wno-missing-field-initializers -Wpointer-arith -Wall -Wno-unused-function -fomit-frame-pointer -funroll-all-loops -fexcess-precision=fast -Wno-array-bounds -O3 -DNDEBUG
Boost version: 1.46.1 (external)
CUDA compiler: /usr/local/cuda/bin/nvcc nvcc: NVIDIA (R) Cuda compiler driver;Copyright (c) 2005-2012 NVIDIA Corporation;Built on Fri_Sep_21_17:28:58_PDT_2012;Cuda compilation tools, release 5.0, V0.2.1221
CUDA compiler flags:-gencode;arch=compute_20,code=sm_20;-gencode;arch=compute_20,code=sm_21;-gencode;arch=compute_30,code=sm_30;-gencode;arch=compute_35,code=sm_35;-gencode;arch=compute_35,code=compute_35;-use_fast_math;-Xcompiler;-fPIC ; ;-msse4.1;-Wextra;-Wno-missing-field-initializers;-Wpointer-arith;-Wall;-Wno-unused-function;-fomit-frame-pointer;-funroll-all-loops;-fexcess-precision=fast;-Wno-array-bounds;-O3;-DNDEBUG
CUDA driver: 5.0
CUDA runtime: 5.0

specs on the rocks cluster:

prompt> gmx --version
GROMACS: gmx, VERSION 5.0

GROMACS is written by:
Emile Apol Rossen Apostolov Herman J.C. Berendsen Par Bjelkmar
Aldert van Buuren Rudi van Drunen Anton Feenstra Sebastian Fritsch
Gerrit Groenhof Christoph Junghans Peter Kasson Carsten Kutzner
Per Larsson Justin A. Lemkul Magnus Lundborg Pieter Meulenhoff
Erik Marklund Teemu Murtola Szilard Pall Sander Pronk
Roland Schulz Alexey Shvetsov Michael Shirts Alfons Sijbers
Peter Tieleman Christian Wennberg Maarten Wolf
and the project leaders:
Mark Abraham, Berk Hess, Erik Lindahl, and David van der Spoel

Copyright (c) 1991-2000, University of Groningen, The Netherlands.
Copyright (c) 2001-2014, The GROMACS development team at
Uppsala University, Stockholm University and
the Royal Institute of Technology, Sweden.
check out http://www.gromacs.org for more information.

GROMACS is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License
as published by the Free Software Foundation; either version 2.1
of the License, or (at your option) any later version.

GROMACS: gmx, VERSION 5.0
Executable: /home/micb/local/bin-gromacs-5.0/bin/gmx
Library dir: /home/micb/local/bin-gromacs-5.0/share/gromacs/top
Command line:
gmx --version

Gromacs version: VERSION 5.0
Precision: single
Memory model: 64 bit
MPI library: thread_mpi
OpenMP support: enabled
GPU support: disabled
invsqrt routine: gmx_software_invsqrt(x)
SIMD instructions: SSE4.1
FFT library: fftw-3.3.3-sse2
RDTSCP usage: enabled
C++11 compilation: enabled
TNG support: enabled
Tracing support: disabled
Built on: Wed Jul 30 14:25:50 CEST 2014
Built by: [CMAKE]
Build OS/arch: Linux 2.6.18-308.4.1.el5 x86_64
Build CPU vendor: GenuineIntel
Build CPU brand: Intel(R) Xeon(R) CPU E5606 @ 2.13GHz
Build CPU family: 6 Model: 44 Stepping: 2
Build CPU features: aes apic clfsh cmov cx8 cx16 htt lahf_lm mmx msr nonstop_tsc pcid pclmuldq pdcm pdpe1gb popcnt pse rdtscp sse2 sse3 sse4.1 sse4.2 ssse3
C compiler: /home/micb/local/bin/gcc GNU 4.8.2
C compiler flags: -msse4.1 -Wno-maybe-uninitialized -Wextra -Wno-missing-field-initializers -Wno-sign-compare -Wpointer-arith -Wall -Wno-unused -Wunused-value -Wunused-parameter -fomit-frame-pointer -funroll-all-loops -fexcess-precision=fast -Wno-array-bounds -O3 -DNDEBUG
C++ compiler: /home/micb/local/bin/g++ GNU 4.8.2
C++ compiler flags: -msse4.1 -std=c++0x -Wextra -Wno-missing-field-initializers -Wpointer-arith -Wall -Wno-unused-function -fomit-frame-pointer -funroll-all-loops -fexcess-precision=fast -Wno-array-bounds -O3 -DNDEBUG
Boost version: 1.55.0 (internal)

and

ldd ~/local/bin-gromacs-5.0/bin/gmx

/home/micb/local/bin-gromacs-5.0/bin/gmx:
linux-vdso.so.1 => (0x00007fffae733000)
libgromacs.so.0 => /home/micb/local/bin-gromacs-5.0/bin/../lib64/libgromacs.so.0 (0x00002af8ead04000)
libdl.so.2 => /lib64/libdl.so.2 (0x0000003e46400000)
librt.so.1 => /lib64/librt.so.1 (0x0000003e46c00000)
libz.so.1 => /lib64/libz.so.1 (0x0000003e46000000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003e46800000)
libstdc++.so.6 => /home/micb/local/lib64/libstdc++.so.6 (0x00002af8ec05d000)
libm.so.6 => /lib64/libm.so.6 (0x0000003e45c00000)
libgomp.so.1 => /home/micb/local/lib64/libgomp.so.1 (0x00002af8ec372000)
libgcc_s.so.1 => /home/micb/local/lib64/libgcc_s.so.1 (0x00002af8ec582000)
libc.so.6 => /lib64/libc.so.6 (0x0000003e45800000)
/lib64/ld-linux-x86-64.so.2 (0x0000003e45400000)

#7 Updated by Michael Brunsteiner about 3 years ago

and the same issue on another desktop with debian testing, gmx 5.0.1 and c++ GNU 4.9.1 ...

gmx freevolume -f test.trr -s md03-psa40x12-li230.tpr -n md03-psa40x12-li230.ndx -o xxx -radius 0.05
[...]
Reading frame 10 time 1260.000 Segmentation fault

gmx --version
GROMACS: gmx, VERSION 5.0.1

GROMACS is written by:
Emile Apol Rossen Apostolov Herman J.C. Berendsen Par Bjelkmar
Aldert van Buuren Rudi van Drunen Anton Feenstra Sebastian Fritsch
Gerrit Groenhof Christoph Junghans Peter Kasson Carsten Kutzner
Per Larsson Justin A. Lemkul Magnus Lundborg Pieter Meulenhoff
Erik Marklund Teemu Murtola Szilard Pall Sander Pronk
Roland Schulz Alexey Shvetsov Michael Shirts Alfons Sijbers
Peter Tieleman Christian Wennberg Maarten Wolf
and the project leaders:
Mark Abraham, Berk Hess, Erik Lindahl, and David van der Spoel

Copyright (c) 1991-2000, University of Groningen, The Netherlands.
Copyright (c) 2001-2014, The GROMACS development team at
Uppsala University, Stockholm University and
the Royal Institute of Technology, Sweden.
check out http://www.gromacs.org for more information.

GROMACS is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License
as published by the Free Software Foundation; either version 2.1
of the License, or (at your option) any later version.

GROMACS: gmx, VERSION 5.0.1
Executable: /usr/local/gromacs/bin/gmx
Library dir: /usr/local/gromacs/share/gromacs/top
Command line:
gmx --version

Gromacs version: VERSION 5.0.1
Precision: single
Memory model: 64 bit
MPI library: thread_mpi
OpenMP support: enabled
GPU support: enabled
invsqrt routine: gmx_software_invsqrt(x)
SIMD instructions: AVX_256
FFT library: fftw-3.3.3-sse2
RDTSCP usage: enabled
C++11 compilation: disabled
TNG support: enabled
Tracing support: disabled
Built on: Mon Sep 15 14:16:02 CEST 2014
Built by: root@rcpe-sbd-node01 [CMAKE]
Build OS/arch: Linux 3.14-2-amd64 x86_64
Build CPU vendor: GenuineIntel
Build CPU brand: Intel(R) Core(TM) i7-4930K CPU @ 3.40GHz
Build CPU family: 6 Model: 62 Stepping: 4
Build CPU features: aes apic avx clfsh cmov cx8 cx16 f16c htt lahf_lm mmx msr nonstop_tsc pcid pclmuldq pdcm pdpe1gb popcnt pse rdrnd rdtscp sse2 sse3 sse4.1 sse4.2 ssse3 tdt x2apic
C compiler: /usr/bin/cc GNU 4.9.1
C compiler flags: -mavx -Wno-maybe-uninitialized -Wextra -Wno-missing-field-initializers -Wno-sign-compare -Wpointer-arith -Wall -Wno-unused -Wunused-value -Wunused-parameter -fomit-frame-pointer -funroll-all-loops -fexcess-precision=fast -Wno-array-bounds -O3 -DNDEBUG
C++ compiler: /usr/bin/c++ GNU 4.9.1
C++ compiler flags: -mavx -Wextra -Wno-missing-field-initializers -Wpointer-arith -Wall -Wno-unused-function -fomit-frame-pointer -funroll-all-loops -fexcess-precision=fast -Wno-array-bounds -O3 -DNDEBUG
Boost version: 1.55.0 (external)
CUDA compiler: /usr/bin/nvcc nvcc: NVIDIA (R) Cuda compiler driver;Copyright (c) 2005-2013 NVIDIA Corporation;Built on Wed_Jul_17_18:36:13_PDT_2013;Cuda compilation tools, release 5.5, V5.5.0
CUDA compiler flags:-gencode;arch=compute_20,code=sm_20;-gencode;arch=compute_20,code=sm_21;-gencode;arch=compute_30,code=sm_30;-gencode;arch=compute_35,code=sm_35;-gencode;arch=compute_35,code=compute_35;-use_fast_math;-Xcompiler;-fPIC ; ;-mavx;-Wextra;-Wno-missing-field-initializers;-Wpointer-arith;-Wall;-Wno-unused-function;-fomit-frame-pointer;-funroll-all-loops;-fexcess-precision=fast;-Wno-array-bounds;-O3;-DNDEBUG
CUDA driver: 6.50
CUDA runtime: 5.50

#8 Updated by David van der Spoel about 3 years ago

I have now reproduced the problem with the release version 5.0.2, but it works fine in master! Seems like a fix in the underlying libraries (neighborsearching for analysis tools) was introduced. The patch is apparently not in the release branch yet.

#9 Updated by Michael Brunsteiner about 3 years ago

I have now reproduced the problem with the release version 5.0.2,
but it works fine in master!

thanks! ... i assume "master" is some development version ... is there a way
to get this as tarball or via git?

and the output of valgrind on debian testing with g++4.9.1 and gmx 5.0.1 is below

Seems like a fix in the underlying
libraries (neighborsearching for analysis tools) was introduced.
The patch is apparently not in the release branch yet.

valgrind gmx freevolume -f test.trr -s md03-psa40x12-li230.tpr -n md03-psa40x12-li230.ndx -o xxx -radius 0.05
11004 Memcheck, a memory error detector
11004 Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
11004 Using Valgrind-3.10.0 and LibVEX; rerun with -h for copyright info
11004 Command: gmx freevolume -f test.trr -s md03-psa40x12-li230.tpr -n md03-psa40x12-li230.ndx -o xxx -radius 0.05
11004
GROMACS: gmx freevolume, VERSION 5.0.1

GROMACS is written by:
Emile Apol Rossen Apostolov Herman J.C. Berendsen Par Bjelkmar
Aldert van Buuren Rudi van Drunen Anton Feenstra Sebastian Fritsch
Gerrit Groenhof Christoph Junghans Peter Kasson Carsten Kutzner
Per Larsson Justin A. Lemkul Magnus Lundborg Pieter Meulenhoff
Erik Marklund Teemu Murtola Szilard Pall Sander Pronk
Roland Schulz Alexey Shvetsov Michael Shirts Alfons Sijbers
Peter Tieleman Christian Wennberg Maarten Wolf
and the project leaders:
Mark Abraham, Berk Hess, Erik Lindahl, and David van der Spoel

Copyright (c) 1991-2000, University of Groningen, The Netherlands.
Copyright (c) 2001-2014, The GROMACS development team at
Uppsala University, Stockholm University and
the Royal Institute of Technology, Sweden.
check out http://www.gromacs.org for more information.

GROMACS is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License
as published by the Free Software Foundation; either version 2.1
of the License, or (at your option) any later version.

GROMACS: gmx freevolume, VERSION 5.0.1
Executable: /usr/local/gromacs/bin/gmx
Library dir: /usr/local/gromacs/share/gromacs/top
Command line:
gmx freevolume -f test.trr -s md03-psa40x12-li230.tpr -n md03-psa40x12-li230.ndx -o xxx -radius 0.05

Reading file md03-psa40x12-li230.tpr, VERSION 5.0 (single precision)
Reading file md03-psa40x12-li230.tpr, VERSION 5.0 (single precision)

WARNING: Masses and atomic (Van der Waals) radii will be guessed
based on residue and atom names, since they could not be
definitively assigned from the information in your input
files. These guessed numbers might deviate from the mass
and radius of the atom type. Please check the output
files if necessary.

NOTE: From version 5.0 gmx uses the Van der Waals radii
from the source below. This means the results may be different
compared to previous GROMACS versions.

+++ PLEASE READ AND CITE THE FOLLOWING REFERENCE +++
A. Bondi
van der Waals Volumes and Radii
J. Phys. Chem. 68 (1964) pp. 441-451
-------- -------- --- Thank You --- -------- --------

cutoff = 0.23 nm
probe_radius = 0.05 nm
seed = -1
ninsert = 1000 probes per nm^3
trn version: GMX_trn_file (single precision)
Reading frame 0 time 1240.000
Back Off! I just backed up xxx.xvg to ./#xxx.xvg.1#
Reading frame 10 time 1260.000 11004 Invalid write of size 4
11004 at 0x54B0DE5: gmx::internal::AnalysisNeighborhoodSearchImpl::addToGridCell(int const*, int) (in /usr/local/gromacs/lib/x86_64-linux-gnu/libgromacs.so.0.0.0)
11004 by 0x54B1ED1: gmx::internal::AnalysisNeighborhoodSearchImpl::init(gmx::AnalysisNeighborhood::SearchMode, t_pbc const*, gmx::AnalysisNeighborhoodPositions const&) (in /usr/local/gromacs/lib/x86_64-linux-gnu/libgromacs.so.0.0.0)
11004 by 0x54B235E: gmx::AnalysisNeighborhood::initSearch(t_pbc const*, gmx::AnalysisNeighborhoodPositions const&) (in /usr/local/gromacs/lib/x86_64-linux-gnu/libgromacs.so.0.0.0)
11004 by 0x5500B89: gmx::analysismodules::(anonymous namespace)::FreeVolume::analyzeFrame(int, trxframe const&, t_pbc*, gmx::TrajectoryAnalysisModuleData*) (in /usr/local/gromacs/lib/x86_64-linux-gnu/libgromacs.so.0.0.0)
11004 by 0x54EB133: gmx::TrajectoryAnalysisCommandLineRunner::run(int, char**) (in /usr/local/gromacs/lib/x86_64-linux-gnu/libgromacs.so.0.0.0)
11004 by 0x54EB3CB: gmx::TrajectoryAnalysisCommandLineRunner::Impl::RunnerCommandLineModule::run(int, char**) (in /usr/local/gromacs/lib/x86_64-linux-gnu/libgromacs.so.0.0.0)
11004 by 0x507FA5D: gmx::CommandLineModuleManager::run(int, char**) (in /usr/local/gromacs/lib/x86_64-linux-gnu/libgromacs.so.0.0.0)
11004 by 0x40CFC9: main (in /usr/local/gromacs/bin/gmx)
11004 Address 0x57c0000056b is not stack'd, malloc'd or (recently) free'd
11004
11004
11004 Process terminating with default action of signal 11 (SIGSEGV)
11004 Access not within mapped region at address 0x57C0000056B
11004 at 0x54B0DE5: gmx::internal::AnalysisNeighborhoodSearchImpl::addToGridCell(int const*, int) (in /usr/local/gromacs/lib/x86_64-linux-gnu/libgromacs.so.0.0.0)
11004 by 0x54B1ED1: gmx::internal::AnalysisNeighborhoodSearchImpl::init(gmx::AnalysisNeighborhood::SearchMode, t_pbc const*, gmx::AnalysisNeighborhoodPositions const&) (in /usr/local/gromacs/lib/x86_64-linux-gnu/libgromacs.so.0.0.0)
11004 by 0x54B235E: gmx::AnalysisNeighborhood::initSearch(t_pbc const*, gmx::AnalysisNeighborhoodPositions const&) (in /usr/local/gromacs/lib/x86_64-linux-gnu/libgromacs.so.0.0.0)
11004 by 0x5500B89: gmx::analysismodules::(anonymous namespace)::FreeVolume::analyzeFrame(int, trxframe const&, t_pbc*, gmx::TrajectoryAnalysisModuleData*) (in /usr/local/gromacs/lib/x86_64-linux-gnu/libgromacs.so.0.0.0)
11004 by 0x54EB133: gmx::TrajectoryAnalysisCommandLineRunner::run(int, char**) (in /usr/local/gromacs/lib/x86_64-linux-gnu/libgromacs.so.0.0.0)
11004 by 0x54EB3CB: gmx::TrajectoryAnalysisCommandLineRunner::Impl::RunnerCommandLineModule::run(int, char**) (in /usr/local/gromacs/lib/x86_64-linux-gnu/libgromacs.so.0.0.0)
11004 by 0x507FA5D: gmx::CommandLineModuleManager::run(int, char**) (in /usr/local/gromacs/lib/x86_64-linux-gnu/libgromacs.so.0.0.0)
11004 by 0x40CFC9: main (in /usr/local/gromacs/bin/gmx)
11004 If you believe this happened as a result of a stack
11004 overflow in your program's main thread (unlikely but
11004 possible), you can try to increase the size of the
11004 main thread stack using the --main-stacksize= flag.
11004 The main thread stack size used in this run was 8388608.
11004
11004 HEAP SUMMARY:
11004 in use at exit: 6,886,626 bytes in 3,350 blocks
11004 total heap usage: 16,978 allocs, 13,628 frees, 29,971,135 bytes allocated
11004
11004 LEAK SUMMARY:
11004 definitely lost: 0 bytes in 0 blocks
11004 indirectly lost: 0 bytes in 0 blocks
11004 possibly lost: 13,784 bytes in 413 blocks
11004 still reachable: 6,872,842 bytes in 2,937 blocks
11004 suppressed: 0 bytes in 0 blocks
11004 Rerun with --leak-check=full to see details of leaked memory
11004
11004 For counts of detected and suppressed errors, rerun with: -v
11004 ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
Segmentation fault

#10 Updated by Gerrit Code Review Bot about 3 years ago

Gerrit received a related patchset '1' for Issue #1611.
Uploader: Teemu Murtola ()
Change-Id: Ib7602fa49a1b8f7882a63843322786b3e51e8e32
Gerrit URL: https://gerrit.gromacs.org/4117

#11 Updated by Teemu Murtola about 3 years ago

  • Status changed from New to Fix uploaded
  • Assignee set to Teemu Murtola
  • Target version changed from 5.x to 5.0.3
  • Affected version - extra info set to 5.0-5.0.2 (also 4.5.* and 4.6.*, but gmx-freevolume does not exist there)

Please test whether the linked change fixes the problem.

#12 Updated by Mark Abraham about 3 years ago

Michael, in general you can get the development version (master) branch by following instructions at http://www.gromacs.org/Developer_Zone/Git#Checking_out_the_Gromacs_source_code_using_git. However, in this case, Teemu's already back-ported the likely fix, and if you follow the link to Gerrit, the Download dropdown will let you get the code in a variety of ways.

#13 Updated by Michael Brunsteiner about 3 years ago

i downlaoded and install master (VERSION 5.1-dev-20141005-37573af) with git
and the issue appears to be resolved - gmx freevolume now finishes gracefully.
thanks for the swift repsonses!
michael

#14 Updated by Teemu Murtola about 3 years ago

Unfortunately, we already knew from David's post that the issue is fixed in master. Is someone planning to test whether my backported change fixes the problem in release-5-0, or should I just abandon my attempt if no one cares about the fix for 5.0.x?

#15 Updated by Teemu Murtola about 3 years ago

  • Status changed from Fix uploaded to Closed

Also available in: Atom PDF