| 2 | 1/1 | 返回列表 |
| 查看: 801 | 回復: 1 | ||
| 【懸賞金幣】回答本帖問題,作者fo3mt2將贈送您 10 個金幣 | ||
fo3mt2金蟲 (小有名氣)
|
[求助]
MPI并行收集數(shù)據(jù)
|
|
|
大家好, 我想請教一段用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)在外循環(huán)里一共被使用了兩次,每次都會調(diào)用子程序proce,并從子程序得到傳回的數(shù)組bcp1。 當用根進程(root processor)使用數(shù)組bcp2,從各個進程(包括其自身)收集各自得到的數(shù)組bcp1時,根進程(root processor)需要先收集自己得到的數(shù)組bcp1。 因為假設根進程(root processor)在外循環(huán)里一共被使用了兩次,根進程(root processor)一共要從自身收集兩次bcp1數(shù)組。那程序里的第6行(標記為!the 6th line),寫成bcp2 = bcp1是否合理呢? 我覺得這樣寫,會使得根進程(root processor)在循環(huán)里第二次被使用得到的數(shù)組bcp1,覆蓋掉第一次被使用得到的數(shù)組bcp1,進而導致丟失了第一次使用時得到的數(shù)組bcp1信息。 如果不丟失信息,應該進行疊加,也就是把第6行寫成bcp2 = bcp2 + bcp1;但程序里卻不是這樣寫的。 我想不通是什么原因,能否請大家給些建議呢?或者是否是程序?qū)戝e了呢? 謝謝啦。 盼復。 |
新蟲 (正式寫手)
| 2 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 江蘇省農(nóng)科院招調(diào)劑1名 +5 | Qwertyuop 2026-03-01 | 5/250 |
|
|---|---|---|---|---|
|
[考研] 292求調(diào)劑 +3 | sgbl 2026-03-03 | 3/150 |
|
|
[基金申請] 沒有青基直接申請面上,感覺自己瘋了 +5 | kevin63t 2026-03-02 | 6/300 |
|
|
[考研] 0805總分292,求調(diào)劑 +12 | 幻想之殤 2026-03-01 | 12/600 |
|
|
[考研]
材料270求調(diào)劑
6+6
|
Eiiiio 2026-03-01 | 11/550 |
|
|
[考研] 267求調(diào)劑 +6 | 釣魚佬as 2026-03-02 | 6/300 |
|
|
[考研] 281電子信息求調(diào)劑 +3 | jhtfeybgj 2026-03-02 | 6/300 |
|
|
[論文投稿]
通訊作者寫誰,問題是你意想不到的問題
15+3
|
阿爾法啊 2026-03-01 | 3/150 |
|
|
[考研] 化工335求調(diào)劑 +5 | 摸摸貓貓頭 2026-03-02 | 5/250 |
|
|
[考研] 271求調(diào)劑 +4 | Ricardo1113 2026-03-02 | 4/200 |
|
|
[考研] 調(diào)劑材料學碩 +4 | 詞凝Y 2026-03-02 | 4/200 |
|
|
[考研] 0854復試調(diào)劑 276 +5 | wmm9 2026-03-01 | 7/350 |
|
|
[考研] 材料化工調(diào)劑 +13 | 今夏不夏 2026-03-01 | 16/800 |
|
|
[考研] 261求調(diào)劑 +3 | 陸lh 2026-03-01 | 3/150 |
|
|
[考研] 一志愿華南理工大學材料與化工326分,求調(diào)劑 +3 | wujinrui1 2026-02-28 | 3/150 |
|
|
[考研] 一志愿鄭大材料學碩298分,求調(diào)劑 +6 | wsl111 2026-03-01 | 6/300 |
|
|
[考研] 調(diào)劑 +3 | 13853210211 2026-03-02 | 4/200 |
|
|
[考研] 材料學調(diào)劑 +10 | 提神豆沙包 2026-02-28 | 12/600 |
|
|
[考研] 0856材料求調(diào)劑 +4 | 麻辣魷魚 2026-02-28 | 4/200 |
|
|
[考研]
|
LYidhsjabdj 2026-02-28 | 4/200 |
|