具有分段错误的OpenMP / MPI可执行错误

时间:2016-11-19 13:51:51

标签: fortran mpi openmp openmpi intel-fortran

我尝试使用ifort-qopenmp标记编译大型模型:

FC = mpif90 and FCFLAGS = -g -m64 -qopenmp -O3 -xHost -fp-model \
precise -convert big_endian -traceback -r8
FCDEFS = BLAS LITTLE LINUX INTEGER_IS_INT
LFLAGS = -qopenmp

CC = mpicc
CFLAGS = -g -O3
CCDEFS = BLAS LITTLE LINUX INTEGER_IS_INT _ABI64

OMP_NUM_THREADS=2
OMP_STACKSIZE=1000M
OMP_SCHEDULE=STATIC

ulimit -s unlimited

mpprun -n 192 master.exe -e "exp1" -f d1 -t 2700

然而,当我尝试运行模型时,我得到了:

mpprun info: Starting impi run on 12 node ( 192 rank X 1 th ) for 22

==================================================================
=   BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
=   PID 19619 RUNNING AT n457
=   EXIT CODE: 11
=   CLEANING UP REMAINING PROCESSES
=   YOU CAN IGNORE THE BELOW CLEANUP MESSAGES
===================================================================
APPLICATION TERMINATED WITH THE EXIT STRING: Segmentation fault 
(signal 11)
mpprun info:   Job terminated with error

现在的问题是,如果我在没有OpenMP标志的情况下编译此模型并使用TotalView运行它,则没有错误,模型会毫无错误地执行。 我试图找到一种方法来追踪出现问题的方法。有没有人有任何想法?我从哪里开始?我怎样才能进行简单的测试,看看OpenMP出现分段错误的原因?

感谢帮助

0 个答案:

没有答案