以文本方式查看主题 - Fortran中文网 (http://fortran.cn/bbs/index.asp) -- Fortran语言开发经验交流 (http://fortran.cn/bbs/list.asp?boardid=3) ---- [求助]【求助】运算fortran的问题,怀疑是不是MPI communication的时候出现问题 (http://fortran.cn/bbs/dispbbs.asp?boardid=3&id=2857) |
-- 作者:eugene -- 发布时间:2013/5/4 15:26:21 -- [求助]【求助】运算fortran的问题,怀疑是不是MPI communication的时候出现问题 1. The program code is parallelizedand executed on a high performance computer cluster using 4 processors(by Intel Fortran compiler in Linux systems with OpenMPI) 接下来简单介绍一下程序: 1) main.f90 是主程序,主要是调用其他程序 2) 主要的计算程序在thermodynamics.f90, tool.f90 and solver.f90 3) Mpi.f90是communication between processes 4) Ghostnode.f90是边界条件 5) Input.f90主要是从input file里读取数据,output.f90就是输出计算结果,inti.f90主要是allocate数组 6) Global.f90是定义的全局变量 现在我怀疑是不是MPI communication的时候出现问题,因为NaN的值出现在第一个processor的边界上,而且这个程序在自己的电脑(windows)下串行运行是OK的但是当我在超级计算机上必行运算时,程序就不行,然后我用DDT debug,发现在这里出现问题,如下图,然后我进一步check,发现变量xp有四个值是NaN, xp被计算用subroutineconvert_composition(ix,iy)。 2,By the way, 如果要运行这个程序的话需要: Intel fotransompiler, intelmkl and open MPI. 3.source code 在src file里, input file 里是需要读入的数据,结果会写在results file里。Makefile是用来compile code的。run.sh是PBS file. 程序在这里:http://pan.baidu.com/share/link?shareid=433689&uk=3305225013 十分感谢! 备注:问题也在这儿 http://emuch.net/bbs/viewthread.php?tid=5846918 [此贴子已经被作者于2013-5-4 15:28:08编辑过]
|