[QE-users] erratic segfault in neb.x

Giuseppe Mattioli giuseppe.mattioli at ism.cnr.it
Tue Feb 12 15:08:57 CET 2019


Dear All
I'm using version 6.3-backports patched with Environ-1.0 on  
marconi at cineca. neb.x runs often without problems, but it sometimes  
stops with segfault, with no apparent reason but the usage (or the  
lack of usage) of the INTERMEDIATE_IMAGE card. I can provide further  
details, if required. The pseudopotentials are taken from the sg15  
ONCV library, regenerated by Lorenzo Paulatto with the  
pseudowavefunctions in order to perform lda_plus_u calculations.

For example, this input runs smoothly to completion.

export FILE="neb1-int"
export INPFILE=$FILE-1.inp
export OUTFILE=$FILE-1.out
echo " $FILE"
echo " $INPFILE"
echo " $OUTFILE"

cat > $INPFILE << EOF
BEGIN
BEGIN_PATH_INPUT
  &PATH
   restart_mode      = 'from_scratch'
   string_method     = 'neb',
   nstep_path        = 999,
   ds                = 2.D0,
   opt_scheme        = "broyden",
   num_of_images     = 10,
   k_max             = 0.3D0,
   k_min             = 0.2D0,
   CI_scheme         = "auto",
   path_thr          = 0.1D0,
  /
END_PATH_INPUT
BEGIN_ENGINE_INPUT
  &control
     calculation = 'relax'
     restart_mode='from_scratch',
     prefix='$FILE',
     pseudo_dir = '$PSEUDO_DIR/',
     outdir='$TMP_DIR/',
     tprnfor=.true.,
     nstep=999,
     disk_io='low',
     max_seconds=1750,
  /
  &system
     ibrav=1, celldm(1)=20.0000,
     nat=5, ntyp=2, tot_charge=-1.0,
     ecutwfc=80.0,
     occupations='smearing', degauss=0.01,
     nspin=2,
     starting_magnetization(1)=0.01,
     vdw_corr='grimme-d3',
     lda_plus_u=.true.,
     Hubbard_U(1)=3.5,
  /
  &electrons
     diagonalization='david',
     mixing_mode='plain'
     mixing_beta=0.1
     conv_thr=1.0d-6
     electron_maxstep=100
     scf_must_converge=.false.,
  /
  &ions
     ion_dynamics='bfgs'
  /
ATOMIC_SPECIES
O    15.999    O_ONCV_PBE-1.0.UPF
H     1.008    H_ONCV_PBE-1.0.UPF
K_POINTS {gamma}
BEGIN_POSITIONS
FIRST_IMAGE
ATOMIC_POSITIONS {angstrom}
O        4.455702089   2.212044072   3.611730009
H        5.090393412   2.499936581   4.262397225
O        2.270203543   3.193235686   4.044718451
H        3.308435164   2.764849675   3.850959602
H        2.215855793   4.058643985   3.647644713
INTERMEDIATE_IMAGE
ATOMIC_POSITIONS {angstrom}
O          4.45570        2.21204        3.61173
H          5.09039        2.49994        4.26240
O          2.27020        3.19324        4.04472
H          3.42650        2.77458        3.83417
H          2.21586        4.05864        3.64764
LAST_IMAGE
ATOMIC_POSITIONS {angstrom}
O        4.600629464   2.152014485   3.601034260
H        5.218013126   2.475466817   4.252935018
O        2.416588332   3.145598027   4.054390916
H        3.610759008   2.629944672   3.805624086
H        2.335480069   3.991125998   3.620425719
END_POSITIONS
END_ENGINE_INPUT
END
EOF
$PARA_PREFIX $ESPRESSO/neb.x -environ -ni 2 -inp $INPFILE >> $OUTFILE

If you simply drop the INTERMEDIATE_IMAGE lines (coordinates included,  
of course) from the input with everything else untouched, then neb.x  
stops without complaining during the first iteration, and slurm.out says

forrtl: severe (174): SIGSEGV, segmentation fault occurred
Image              PC                Routine            Line        Source
neb.x              0000000000D57E84  Unknown               Unknown  Unknown
libpthread-2.17.s  00002B1713218370  Unknown               Unknown  Unknown
neb.x              0000000000D1C520  Unknown               Unknown  Unknown
neb.x              0000000000D30482  Unknown               Unknown  Unknown
neb.x              0000000000D27AB0  Unknown               Unknown  Unknown
neb.x              0000000000CDEF1A  Unknown               Unknown  Unknown
neb.x              00000000008A22A8  qes_libs_module_m        1325   
qes_libs.f90
neb.x              000000000057B8E3  pw_restart_new_mp         498   
pw_restart_new.f90
neb.x              0000000000577BE9  punch_                     73  punch.f90
neb.x              0000000000438481  compute_scf_IP_do         325   
compute_scf.f90
neb.x              00000000004369A6  compute_scf_              140   
compute_scf.f90
neb.x              000000000040ECC2  path_base_mp_sear         828   
path_base.f90
neb.x              00000000004072AD  MAIN__                    105  neb.f90
neb.x              0000000000406E5E  Unknown               Unknown  Unknown
libc-2.17.so       00002B1713748B35  __libc_start_main     Unknown  Unknown
neb.x              0000000000406D69  Unknown               Unknown  Unknown

The same is randomly happening for different (and more sensible, this  
is only an example) calculations.
Is anybody able to suggest improvements for this situation?
Thank you in advance
Giuseppe


GIUSEPPE MATTIOLI
CNR - ISTITUTO DI STRUTTURA DELLA MATERIA
Via Salaria Km 29,300 - C.P. 10
I-00015 - Monterotondo Scalo (RM)
Mob (*preferred*) +39 373 7305625
Tel + 39 06 90672342 - Fax +39 06 90672316
E-mail: <giuseppe.mattioli at ism.cnr.it>



More information about the users mailing list