中易网

mpi并行问题,MPI_Barrier直接报错???

答案:2  悬赏:80  
解决时间 2021-02-28 03:06
一个简单的测试代码:

[zhuangzhanpeng@node1 example]$ cat test.f90
include 'mpif.h'

integer :: ierr, pid, npe

call MPI_INIT(ierr)
mpi_comm = MPI_COMM_WORLD
call MPI_COMM_RANK(mpi_comm, pid, ierr)
call MPI_COMM_SIZE(mpi_comm, npe, ierr)

print*,pid,'1'
call MPI_Barrier(MPI_COMM_WORLD)
print*,pid,'2'

call MPI_FINALIZE(ierr)
end

0 1
1 1
[node1:13888] *** Process received signal ***
[node1:13888] Signal: Segmentation fault (11)
[node1:13888] Signal code: Address not mapped (1)
[node1:13888] Failing at address: 0x1
[node1:13889] *** Process received signal ***
[node1:13889] Signal: Segmentation fault (11)
[node1:13889] Signal code: Address not mapped (1)
[node1:13889] Failing at address: 0x1
[node1:13888] *** End of error message ***
[node1:13889] *** End of error message ***
--------------------------------------------------------------------------
mpirun noticed that process rank 1 with PID 13889 on node node1 exited on signal 11 (Segmentation fault).
--------------------------------------------------------------------------

其中mpif90基于的编译器是pgf90,难道是编译器的问题??
最佳答案
后面少了一个参数,写成这样就好了
call MPI_Barrier(mpi_comm,ierr)
全部回答
这个是正常的。 因为虽然逻辑上的确如此,但是输出是有缓存的,也就是说输出的顺序不一定是逻辑的顺序。。大致是这个意思,,我也不是计算机系的,表述可能不严格。 如果你在mpi_barrier()后加上fflush(stdout)应该输出的就是逻辑的顺序了。。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
淘宝 中通快递 地址写错了
怀孕二个月做人流多少钱?
绍兴金绿洲科技有限公司在什么地方啊,我要过
释迦摩尼以前有佛吗?
梦见家人和别人打架家人被打死了是啥意思
乐居苑(西北门)地址在什么地方,想过去办事
若为假期故是什么意思
3dmax2014轴约束怎么取消显示圆圈
东方超市我想知道这个在什么地方
Unity3D 中导入3Dmax的模型,怎样让两者坐标
滨州市中博房地产有限公司这个地址在什么地方
持有效美签到墨西哥旅游再返美国入境给多久时
在未取得施工许可证之前,监理单位可不可以批
一个小男孩的电影
疯狂小吃我想知道这个在什么地方
推荐资讯
蚀刻机是什么原理?
衡阳市福建商会联络处怎么去啊,有知道地址的
新疆玥果创意文化传媒有限公司地址在什么地方
口袋中有7个黑球,12个白球,6个红球至少取出多
18K金表链磨损怎么办
日字加一笔变成一个新字,你最先想到的是什么
86666平方米等于多少米
一什么什么舟
美肤宝,温碧泉,优资莱三个品种的面双可以一
东赵庄子村怎么去啊,有知道地址的么
花家串串香(韩后雄风新天地)这个地址在什么地
2015_5_31哈大高铁晚点原因
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?