- 1、本文档共28页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
并行计算.ppt
现代密码学理论与实践之五 并 行 计 算 中国科学技术大学计算机科学与技术系 国家高性能计算中心(合肥) 2004年12月 第二篇 并行算法的设计 第四章 并行算法的设计基础 第五章 并行算法的一般设计方法 第六章 并行算法的基本设计技术 第七章 并行算法的一般设计过程 第四章 并行算法的设计基础 4.1 并行算法的基础知识 4.2 并行计算模型 4.1 并行算法的基础知识 4.1.1 并行算法的定义和分类 4.1.2 并行算法的表达 4.1.3 并行算法的复杂性度量 4.1.4 并行算法中的同步和通讯 并行算法的定义和分类 并行算法的定义 算法 并行算法:一些可同时执行的诸进程的集合,这些进程互相作用和协调动作从而达到给定问题的求解。 并行算法的分类 数值计算和非数值计算 同步算法和异步算法 分布算法 确定算法和随机算法 4.1 并行算法的基础知识 4.1.1 并行算法的定义和分类 4.1.2 并行算法的表达 4.1.3 并行算法的复杂性度量 4.1.4 并行算法中的同步和通讯 并行算法的表达 描述语言 可以使用类Algol、类Pascal等; 在描述语言中引入并行语句。 并行语句示例 Par-do语句 for i=1 to n par-do …… end for for all语句 for all Pi, where 0≤i≤k …… end for 4.1 并行算法的基础知识 4.1.1 并行算法的定义和分类 4.1.2 并行算法的表达 4.1.3 并行算法的复杂性度量 4.1.4 并行算法中的同步和通讯 并行算法的复杂性度量 串行算法的复杂性度量 最坏情况下的复杂度(Worst-CASE Complexity) 期望复杂度(Expected Complexity) 并行算法的几个复杂性度量指标 运行时间t(n):包含计算时间和通讯时间,分别用计算时间步和选路时间步作单位。n为问题实例的输入规模。 处理器数p(n) 并行算法成本c(n): c(n)=t(n)p(n) 总运算量W(n): 并行算法求解问题时所完成的总的操作步数。 并行算法的复杂性度量 Brent定理 令W(n)是某并行算法A在运行时间T(n)内所执行的运算 量,则A使用p台处理器可在t(n)=O(W(n)/p+T(n))时间 内执行完毕。 W(n)和c(n)密切相关 P=O(W(n)/T(n))时,W(n)和c(n)两者是渐进一致的 对于任意的p,c(n)?W(n) 4.1 并行算法的基础知识 4.1.1 并行算法的定义和分类 4.1.2 并行算法的表达 4.1.3 并行算法的复杂性度量 4.1.4 并行算法中的同步和通讯 并行算法的同步 同步概念 同步是在时间上强使各执行进程在某一点必须互相等待; 可用软件、硬件和固件的办法来实现。 同步语句示例 算法4.1 共享存储多处理器上求和算法 输入:A=(a0,…,an-1),处理器数p 输出:S=Σai Begin (1)S=0 (2.3) lock(S) (2)for all Pi where 0≤i≤p-1 do S=S+L (2.1) L=0 (2.4) unlock(S) (2.2) for j=i to n step p do end for L=L+aj End end for end for 并行算法的通讯 通讯 共享存储多处理器使用:global read(X,Y)和global write(X,Y) 分布存储多计算机使用:send(X,i)和receive(Y
文档评论(0)