并行计算矩阵分块乘法.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE 21 目录 TOC \o 1-3 \h \z \u 一、题目及要求 1 1、题目 1 2、要求 1 二、设计算法、算法原理 1 三、算法描述、设计流程 2 3.1算法描述 2 3.2设计流程 4 四、源程序代码及运行结果 6 1、超立方 6 1.1超立方的源程序代码 6 1.2运行结果 11 2、网孔连接 11 2.1源程序代码 11 2.2运行结果 18 3、在数学软件中的计算结果 19 五、算法分析、优缺点 19 1、简单的并行分块乘法的过程为 19 2、使用Cannon算法时的算法分析 20 3、算法的优缺点 21 六、总结 22 参考文献 23 一、题目及要求 1、题目 简单并行分块乘法:(1)情形1: 超立方连接;(2)情形2:二维环绕网孔连接 已知求。 2、要求 (1)题目分析、查阅与题目相关的资料; (2)设计算法; (3)算法实现、代码编写; (4)结果分析和性能分析与改进; (5)论文撰写、答辩; 二、设计算法、算法原理 要考虑的计算问题是C=AB,其中A与B分别是矩阵。 = 1 \* GB3 ①A、B和C分成的方块阵,和,大小均为 ,p个处理器编号为, 存放,和。 = 2 \* GB3 ②通讯:每行处理器进行A矩阵块的多到多播送(得到, k=0~ ) 每列处理器进行B矩阵块的多到多播送(得到, k=0~ ) = 3 \* GB3 ③乘-加运算: 做 三、算法描述、设计流程 3.1算法描述 超立方情形下矩阵的简单并行分块算法 输入:待选路的信包在源处理器中 输出:将原处理器中的信包送至其目的地 Begin for i=1 to n do endfor (2) (3) while do (3.1)if then从当前节点V选路到节点为V1 (3.2) endwhile End 二维网孔情形下矩阵的简单并行分块算法 输入:待选路的信包处于源处理器中 输出:将各信包送至各自的目的地中 Begin 沿x维将信包向左或向右选路至目的地的处理器所在的列 沿y维将信包向上或向下选路至目的地的处理器所在的行 分块乘法算法 //输入: , ; 子快大小均为 输出: n Begin (1)for i=0 to do for all par-do if ik then ? endif if jk then ? B(i+1)mod , j endif endfor endfor for i=0 to do for all par-do =+ endfor Endfor End 3.2设计流程 以下是二维网孔与超立方连接设计流程。 如图3-1 二维网孔 步骤: (1)先进行行播送; (2)再同时进行列播送; 3 3 7 6 2 5 1 4 9 8 0 4 4 4 4 4 4 4 4 4 2 2 3 3 3 3 1 11 12 13 14 15 10 图3-1 二维网孔示意图 超立方 步骤:依次从低维到高维播送, d-立方, d=0,1,2,3,4…; 算法流程如图所示: 包括 包括mpi的头文件 相关变量声明 MPI_INIT() MPI_COMM_RANK() MPI_COMM_SIZE() 进入MPI系统 矩阵内部的通信 应用控制实体: 矩阵内部的计算程序 MPI_FINALIZE() 退出MPI系统 结束 开始 循环直至结束 图3-2 算法流程 四、源程序代码及运行结果 1、超立方 1.1超立方的源程序代码 #include stdio.h #include stdlib.h #include mpi.h #define intsize sizeof(int) #define floatsize sizeof(float) #define charsize sizeof(char) #define A(x,y) A[

文档评论(0)

3388813 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档