我有一个使用mpif90编译的现有fortran代码。它编译并成功运行。但是,当我介绍-fopenmp选项mpif90编译器成功编译代码但程序无法运行完成。它在进入子程序之前突然退出。好像堆栈已满,所以程序突然退出。这些联机帮助页说-fopenmp会在堆栈上分配数组,就像使用-frecursive标志一样。我该如何处理这个问题以及什么是-frecursive标志?
答案 0 :(得分:0)
您需要增加主线程(在linux上将使用limit或ulimit命令)和从线程(如果您使用OpenMP V3.0,那将通过环境变量OMP_STACKSIZE)的堆栈)。