运行VASP 5.4.1时出现分段错误

时间:2016-06-22 08:52:21

标签: segmentation-fault fortran mpi

所以我们试图在Ubuntu 14.04 LTS上编译VASP 5.4.1。遵循此处描述的类似安装步骤: How to compile VASP 5.4.1 for Linux Debian using the GNU compiler。但是,在测试vasp可执行文件(vasp_std等)时,程序会以分段错误终止 - 无效的内存引用错误。

我们目前拥有的makefile.include是:

# Precompiler options
CPP_OPTIONS= -DMPI -DHOST=\"IFC91_ompi\" -DIFC \
         -DCACHE_SIZE=4000 \
         -DMPI_BLOCK=8000 -DscaLAPACK -Duse_collective \
         -DnoAugXCmeta -Duse_bse_te \
         -Duse_shmem -Dtbdyn

CPP        = gcc -E -P -C $*$(FUFFIX) >$*$(SUFFIX) $(CPP_OPTIONS)

FC         = mpif90
FCL        = mpif90

FREE       = -ffree-form -ffree-line-length-none

FFLAGS     =
OFLAG      = -O2
OFLAG_IN   = $(OFLAG)
DEBUG      = -O0

LIBDIR     = /usr/lib/x86_64-linux-gnu
BLAS       = -L$(LIBDIR) -lblas
LAPACK     = -L$(LIBDIR) -llapack
BLACS      = -L$(LIBDIR) -lblacs-openmpi -lblacsCinit-openmpi
SCALAPACK  = -L$(LIBDIR) -lscalapack-openmpi $(BLACS)

OBJECTS    = fftmpiw.o fftmpi_map.o  fftw3d.o  fft3dlib.o \
         /usr/lib/x86_64-linux-gnu/libfftw3.a
INCS       =-I/usr/include

LLIBS      = $(SCALAPACK) $(LAPACK) $(BLAS)

OBJECTS_O1 += fft3dfurth.o fftw3d.o fftmpi.o fftmpiw.o chi.o
OBJECTS_O2 += fft3dlib.o

# For what used to be vasp.5.lib
CPP_LIB    = $(CPP)
FC_LIB     = $(FC)
CC_LIB     = gcc
CFLAGS_LIB = -O
FFLAGS_LIB = -O1
FREE_LIB   = $(FREE)

OBJECTS_LIB= linpack_double.o getshmem.o

# Normally no need to change this
SRCDIR     = ../../src
BINDIR     = ../../bin

跑完后:

mpirun -np 8 /home/<user>/VASP/vasp.5.4.1/bin/vasp_std

程序运行一段时间然后终止了一些分段错误消息(我最后一次运行它给了8个!):

Program received signal SIGSEGV: Segmentation fault - invalid memory reference.

Backtrace for this error:
#0  0x7F62EE595777
#1  0x7F62EE595D7E
#2  0x7F62EDA95CAF
#3  0x4DE3EA in __nonl_MOD_spher
#4  0x637E84 in __msphpro_MOD_sphpro
#5  0xC1E013 in MAIN__ at main.f90:?

任何见解都将受到赞赏。

0 个答案:

没有答案