登 录
註 冊
论坛
微波仿真网
注册
登录论坛可查看更多信息
微波仿真论坛
>
时域有限差分法 FDTD
>
关于并行计算中数据传递时遇到的问题
发帖
回复
1886
阅读
8
回复
[
求助
]
关于并行计算中数据传递时遇到的问题
离线
kelley_wang
吃得苦中苦,方为人上人!
UID :23653
注册:
2008-12-25
登录:
2020-09-16
发帖:
496
等级:
积极交流四级
0楼
发表于: 2009-05-08 13:49:41
应用MPI 编写的并行语言中,如果是沿着对角线方向传递数据,即沿与坐标轴成45度角的方向传递,在MPI_CART_SHIFT(comm,direction,disp,rank_source,rank_dset)函数中这些参数应该如何设定。主要是direction和disp这两个参数不知道应该是什么。刚接触并行不久,不是很熟 ..
l gTw>r
3xpygx9
未注册仅能浏览
部分内容
,查看
全部内容及附件
请先
登录
或
注册
共
条评分
努力实现梦想!
离线
gwzhao
方恨少
UID :17098
注册:
2008-08-24
登录:
2019-01-09
发帖:
1374
等级:
荣誉管理员
1楼
发表于: 2009-05-08 14:27:32
通过平移操作得到相邻关系
&cB+la\_
s f<NC>-
MPI_CART_SHIFT(comm, direction, disp, rank_source, rank_dest)
Cc!LJ
IN comm 带有笛卡尔结构的通信域(句柄)
~MLBO
IN direction 需要平移的坐标维(整数)
gatxvR7H
IN disp 偏移量(整数)
K.: :P84m;
OUT rank_source 源进程的卡氏坐标
$5Tjo T
OUT rank_dest 目标进程的卡氏坐标
F)hUT@
int MPI_Cart_shift(MPI_Comm comm, int direction, int disp, int
HWi: CDgm
*rank_source, int *rank_dest)
LFPYnK
MPI_CART_SHIFT(COMM, DIRECTION, DISP, RANK_SOURCE, RANK_DEST,
)dZ1$MC[
IERROR)
EF[I@voc
INTEGER COMM, DIRECTION, DISP, RANK_SOURCE, RANK_DEST, IERROR
;>h:VnV(>(
MPI_CART_SHIFT将有拓扑结构的通信域comm中的一个笛卡儿坐标rank_source,沿着指定的维direction,以偏移量 disp进行平移,得到的是调用进程的笛卡儿坐标值,而调用进程的笛卡儿坐标经过同样的平移后,得到的是rank_dest。对于非周期性的拓扑,当超出范围后rank_source与rank_dest可以是MPI_PROC_NULL可以在中返回。
共
1
条评分
cem-uestc
技术分
+1
积极参与讨论+技术分 论坛感谢您的参与
2009-05-08
逆流而上
离线
gwzhao
方恨少
UID :17098
注册:
2008-08-24
登录:
2019-01-09
发帖:
1374
等级:
荣誉管理员
2楼
发表于: 2009-05-08 14:45:54
希望这些资料对你有点帮助。
附件:
非数值并行算法MPI编程实现_1.doc
(631 K) 下载次数:19
附件:
非数值并行算法MPI编程实现_2.1.doc
(847 K) 下载次数:19
共
1
条评分
cem-uestc
rf币
+10
感谢您的资料
2009-05-08
逆流而上
离线
cem-uestc
UID :9061
注册:
2008-03-07
登录:
2019-01-05
发帖:
2575
等级:
荣誉管理员
3楼
发表于: 2009-05-08 17:37:03
为什么要斜传数据?效率无法保障,处理起来也麻烦
共
1
条评分
gwzhao
技术分
+1
积极参与讨论+技术分 论坛感谢您的参与
2009-05-08
欢迎光临
http://www.mwtee.com/home.php?mod=space&uid=13535
离线
kelley_wang
吃得苦中苦,方为人上人!
UID :23653
注册:
2008-12-25
登录:
2020-09-16
发帖:
496
等级:
积极交流四级
4楼
发表于: 2009-05-09 09:42:32
回 2楼(gwzhao) 的帖子
非常感谢,我先看看
共
条评分
努力实现梦想!
离线
kelley_wang
吃得苦中苦,方为人上人!
UID :23653
注册:
2008-12-25
登录:
2020-09-16
发帖:
496
等级:
积极交流四级
5楼
发表于: 2009-05-09 09:44:14
回 3楼(cem-uestc) 的帖子
正在做FDTD的各项异性并行,每个节点的计算要用到周围28个节点,在并行里,就会遇到需要斜传的情况。
共
1
条评分
gwzhao
rf币
+1
积极参与
2009-05-09
努力实现梦想!
离线
cem-uestc
UID :9061
注册:
2008-03-07
登录:
2019-01-05
发帖:
2575
等级:
荣誉管理员
6楼
发表于: 2009-05-09 10:41:19
能否把周围的并行面数据总体进行传递
共
条评分
欢迎光临
http://www.mwtee.com/home.php?mod=space&uid=13535
离线
kelley_wang
吃得苦中苦,方为人上人!
UID :23653
注册:
2008-12-25
登录:
2020-09-16
发帖:
496
等级:
积极交流四级
7楼
发表于: 2009-05-09 12:23:50
沿着轴的传递是整个面的数据全部传递,斜对角传递时没有那么多的存储空间了,也没有必要传那么多数,只要一列数据,这样也正好存的下。再扩大数组存储空间的话,可能会不利于用虚拟进程了。我是这么觉得
共
条评分
努力实现梦想!
离线
kelley_wang
吃得苦中苦,方为人上人!
UID :23653
注册:
2008-12-25
登录:
2020-09-16
发帖:
496
等级:
积极交流四级
8楼
发表于: 2009-05-09 12:37:35
回 6楼(cem-uestc) 的帖子
28个节点有的是沿着坐标轴轴向传递的,有的是沿着斜对角传递的。斜对角需要传递的这列数据已经组装好,只差传递。现在唯一的焦点就是MPI_Cart_shift 这个函数。我见到的都是上下、左右这类的传递,没有斜传的。有见过这类资料的话分享一下吧:)
共
条评分
努力实现梦想!
发帖
回复