24小时热门版块排行榜    

查看: 486  |  回复: 1
【悬赏金币】回答本帖问题,作者fo3mt2将赠送您 10 个金币
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

fo3mt2

金虫 (小有名气)

[求助] MPI并行收集数据

大家好,

我想请教一段用fortran写的mpi并行程序。代码如下:

do i = 1, nomi, 1
   if (mod(i-1,world_size) /= world_rank) cycle
   kkim = kkimp(i,1:3)
   call proce(i,ndegen,nbc,npo,kkim,hil,thil,tecv,teve,bcb,eni,er,pi,nne,hb,bcp1)
   if (world_rank == 0) then
      bcp2 = bcp1 !the 6th line
      do j = 1, world_size-1, 1
         if (i-1+j == nomi) exit
         k = i + j + 1000
         call mpi_recv(bcp3,nomi*nne*6,mpi_double_complex,j,k,mpi_comm_world,mpi_status_ignore,ierr)
         bcp2 = bcp2 + bcp3
      end do
   else
      k = i + 1000
      call mpi_send(bcp1,nomi*nne*6,mpi_double_complex,0,k,mpi_comm_world,ierr)
   end if
end do

假设根进程(root processor)在外循环里一共被使用了两次,每次都会调用子程序proce,并从子程序得到传回的数组bcp1。

当用根进程(root processor)使用数组bcp2,从各个进程(包括其自身)收集各自得到的数组bcp1时,根进程(root processor)需要先收集自己得到的数组bcp1。

因为假设根进程(root processor)在外循环里一共被使用了两次,根进程(root processor)一共要从自身收集两次bcp1数组。那程序里的第6行(标记为!the 6th line),写成bcp2 = bcp1是否合理呢?

我觉得这样写,会使得根进程(root processor)在循环里第二次被使用得到的数组bcp1,覆盖掉第一次被使用得到的数组bcp1,进而导致丢失了第一次使用时得到的数组bcp1信息。

如果不丢失信息,应该进行叠加,也就是把第6行写成bcp2 = bcp2 + bcp1;但程序里却不是这样写的。

我想不通是什么原因,能否请大家给些建议呢?或者是否是程序写错了呢?

谢谢啦。

盼复。
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

taichiman

新虫 (正式写手)

请问mpi并行程序的编译环境是?

发自小木虫Android客户端
2楼2022-12-05 12:05:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 fo3mt2 的主题更新
不应助 确定回帖应助 (注意:应助才可能被奖励,但不允许灌水,必须填写15个字符以上)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[教师之家] 执念 +9 459582015 2024-05-16 10/500 2024-05-22 19:28 by 预演556
[有机交流] TsCl保护羟基为什么不反应 +5 853015158 2024-05-21 21/1050 2024-05-22 18:31 by 853015158
[基金申请] 国自然的面上项目,5个审稿人,5个B能上会吗? 4+10 lancet0903 2024-05-20 32/1600 2024-05-22 15:45 by 潇湘之迷
[论文投稿] word转成pdf之后公式里面的字体变了,正文字体没变。 +8 1255037206 2024-05-20 10/500 2024-05-22 14:39 by keyaner23
[硕博家园] 超过35岁的海外博士还可以进高校吗? +4 905452934 2024-05-20 5/250 2024-05-22 14:13 by xmc_ues_2015
[硕博家园] 人生 +7 暮色恋伊人 2024-05-22 7/350 2024-05-22 13:52 by 白菜1992
[基金申请] 又有两个中科院三、四区计算机领域SCI/SSCI期刊爆出问题了! +4 瞬息宇宙 2024-05-19 6/300 2024-05-22 12:37 by yp_nupt
[基金申请] bless bless bless bless bless bless +5 chenwenqnig 2024-05-19 6/300 2024-05-22 11:32 by 172132014
[考博] 化工三篇sci只想有书读,急寻博导! +3 8139173 2024-05-21 5/250 2024-05-22 10:56 by 安塔瓦拉多
[硕博家园] 2024/2025碳纳米材料方向博士/科研助理申请 +4 小二仙 2024-05-21 7/350 2024-05-22 09:51 by 呼呼一哈黑
[复合材料] 关于导电胶 +3 wgx2000 2024-05-17 6/300 2024-05-22 09:42 by wgx2000
[基金申请] 河北省基金 +12 3101251516 2024-05-16 19/950 2024-05-21 21:20 by zhang5657
[博后之家] 山东大学(青岛)“天然药物生物智造”课题组 招聘“博士后”(年薪20.4-55.6万元) +3 第二种态度 2024-05-18 6/300 2024-05-21 15:37 by 安小樱
[硕博家园] 民办高校入职后稳定吗? +16 905452934 2024-05-16 24/1200 2024-05-21 15:29 by given898
[论文投稿] 论文一审意见回来后发现实验程序编错了论证分析部分可能要大改 5+4 hshhenb 2024-05-20 5/250 2024-05-21 11:03 by bnullh
[论文投稿] Angew拒稿重投经历大修返回又送审了 48+4 YOONAZHA 2024-05-18 6/300 2024-05-21 10:35 by jurkat.1640
[硕博家园] 又见奇葩学生,可咋办 +25 appleapple2 2024-05-17 30/1500 2024-05-21 09:13 by qyws
[基金申请] 基金委也是打工的 +25 wsjing 2024-05-16 34/1700 2024-05-21 08:31 by mrKiller
[基金申请] 申请基金代表性成果 +14 lancet0903 2024-05-17 20/1000 2024-05-21 00:23 by dxcharlary
[考博] 【2025 申博】材料或者冶金工程 +4 枫落孤城 2024-05-19 5/250 2024-05-20 10:52 by 枫落孤城
信息提示
请填处理意见