[gmx-users] Segmentation fault at g_traj

Justin A. Lemkul jalemkul at vt.edu
Thu Aug 12 21:46:03 CEST 2010



Jorge Alberto Jover Galtier wrote:
> Dear friends:
> Running several simulations, we have found a problem with the 'g_traj' 
> utility. It doesn't finish properly the files it generates, and gives a 
> segmentation fault. This is what we have done:
> 
> We are working with double precision. With the file .mdp that is at the 
> end of the mail, we have used 'grompp_d' to generate the .tpr file:
> 
> grompp_d -maxwarn 1000 -f temp_prueba_mail-list_001_mdpmdp -c 
> ../data/in/pep_ini.gro -r ../data/in/pep_ini.gro -p ../data/in/pep.top 
> -o temp_prueba_mail-list_001_tpr.tpr
> 
> After that, we ran the simulation with 'mdrun_d':
> 
> mdrun_d -s temp_prueba_mail-list_001_tpr.tpr -o 
> temp_prueba_mail-list_001_trr.trr -c 
> ../data/out/gro_unconstr_1.00_000001.gro -g 
> ../data/out/log_unconstr_1.00_000001.log -e 
> temp_prueba_mail-list_001_edr.edr
> 
> Then we tried to get the coordinates of the atoms with 'g_traj_d':
> 
> g_traj_d -f temp_prueba_mail-list_001_trr.trr -s 
> temp_prueba_mail-list_001_tpr.tpr -ox temp_prueba_mail-list_001_ox.xvg
> 
> At the terminal, we tell the program to get the coordinates from the 
> group 0 (system), although the error appears also for other groups.
> 
> Here is where the problem appears. When the program is about to finish, 
> it makes segmentation fault and ends abruptly. The .xvg file has only 
> some of the last lines missing, but those are the lines we are 
> interested in. We have tried different ways: we have used different 
> number of steps, we have get velocities and forces instead of 
> coordinates... and always the same problem appears.
> 
> We would be very thankful if someone could tell us what is going wrong.
> 

You're probably running out of memory.  Your .mdp file indicates that you save 
full-precision coordinates every step (yikes!) over 100,000 steps.  If you're 
trying to print the coordinate of every atom at every time, then the file that 
g_traj is trying to produce will be enormous, and you'll potentially use up all 
the memory your machine has.

Other diagnostic information that would be useful would be the number of atoms 
in the system (to see if I'm on to something or completely guessing).  Does 
g_traj work if you just try to output a single frame, or just a few using -b and -e?

-Justin

> Best wishes,
> Jorge Alberto Jover Galtier
> Universidad de Zaragoza, Spain
> 
> -----------------------
> 
> ; VARIOUS PREPROCESSING OPTIONS
> title                    = Yo
> cpp                      = /usr/bin/cpp
> include                  =
> define                   =
> 
> ; RUN CONTROL PARAMETERS
> integrator               = md
> ; Start time and timestep in ps
> tinit                    = 0
> dt = 0.001000
> nsteps                   = 100000
> ; For exact run continuation or redoing part of a run
> init_step                = 0
> ; mode for center of mass motion removal
> comm-mode                = none
> ; number of steps for center of mass motion removal
> nstcomm                  = 1
> ; group(s) for center of mass motion removal
> comm-grps                =
> 
> ; OUTPUT CONTROL OPTIONS
> ; Output frequency for coords (x), velocities (v) and forces (f)
> nstxout                  = 1
> nstvout                  = 1
> nstfout                  = 1
> ; Checkpointing helps you continue after crashes
> nstcheckpoint            = 1000
> ; Output frequency for energies to log file and energy file
> nstlog                   = 1000
> nstenergy                = 1
> nstcalcenergy         = 1
> ; Output frequency and precision for xtc file
> nstxtcout                = 50
> xtc-precision            = 1000
> ; This selects the subset of atoms for the xtc file. You can
> ; select multiple groups. By default all atoms will be written.
> xtc-grps                 =
> ; Selection of energy groups
> energygrps               =
> 
> ; NEIGHBORSEARCHING PARAMETERS
> ; nblist update frequency
> nstlist                  = -1
> ; ns algorithm (simple or grid)
> ns_type                  = grid
> ; Periodic boundary conditions: xyz (default), no (vacuum)
> ; or full (infinite systems only)
> pbc                      = no
> ; nblist cut-off       
> rlist                    = 20
> domain-decomposition     = no
> 
> ; OPTIONS FOR ELECTROSTATICS AND VDW
> ; Method for doing electrostatics
> coulombtype              = Reaction-Field-zero
> rcoulomb-switch          = 0
> rcoulomb                 = 4
> ; Dielectric constant (DC) for cut-off or DC of reaction field
> epsilon-r                = 1
> epsilon-rf         = 0
> ; Method for doing Van der Waals
> vdw-type                 = Shift
> ; cut-off lengths      
> rvdw-switch              = 0
> rvdw                     = 4
> ; Apply long range dispersion corrections for Energy and Pressure
> DispCorr                 = no
> ; Extension of the potential lookup tables beyond the cut-off
> table-extension          = 1
> 
> ; IMPLICIT SOLVENT (for use with Generalized Born electrostatics)
> implicit_solvent         = No
> 
> ; OPTIONS FOR WEAK COUPLING ALGORITHMS
> ; Temperature coupling 
> Tcoupl                   = no
> ; Groups to couple separately
> tc-grps                  = System
> ; Time constant (ps) and reference temperature (K)
> tau_t                    = 0.1
> ref_t                    = 300
> ; Pressure coupling    
> Pcoupl                   = no
> Pcoupltype               = isotropic
> ; Time constant (ps), compressibility (1/bar) and reference P (bar)
> tau_p                    = 1.0
> compressibility          = 4.5e-5
> ref_p                    = 1.0
> ; Random seed for Andersen thermostat
> andersen_seed            = 815131
> 
> ; GENERATE VELOCITIES FOR STARTUP RUN
> gen_vel                  = yes
> gen_temp                 = 300
> gen_seed = 556380
> 
> ; OPTIONS FOR BONDS   
> constraints = none
> ; Type of constraint algorithm
> constraint-algorithm = Shake
> ; Do not constrain the start configuration
> unconstrained-start      = yes
> ; Use successive overrelaxation to reduce the number of shake iterations
> Shake-SOR                = no
> ; Relative tolerance of shake
> shake-tol = 1e-5
> ; Highest order in the expansion of the constraint coupling matrix
> lincs-order              = 4
> ; Number of iterations in the final step of LINCS. 1 is fine for
> ; normal simulations, but use 2 to conserve energy in NVE runs.
> ; For energy minimization with constraints it should be 4 to 8.
> lincs-iter               = 1
> ; Lincs will write a warning to the stderr if in one step a bond
> ; rotates over more degrees than
> lincs-warnangle          = 30
> ; Convert harmonic bonds to morse potentials
> morse                    = no
> 
> ; ENERGY GROUP EXCLUSIONS
> ; Pairs of energy groups for which all non-bonded interactions are excluded
> energygrp_excl           =
> 
> 

-- 
========================================

Justin A. Lemkul
Ph.D. Candidate
ICTAS Doctoral Scholar
MILES-IGERT Trainee
Department of Biochemistry
Virginia Tech
Blacksburg, VA
jalemkul[at]vt.edu | (540) 231-9080
http://www.bevanlab.biochem.vt.edu/Pages/Personal/justin

========================================



More information about the gromacs.org_gmx-users mailing list