- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
并行算法的同步
* 1.3 并行算法的一般概念: 并行算法的表示 par-do语句 for i=1 to n par-do 或 for i=1 to n do in parallel . . . . . . end for end for for all语句 for all Pi, where 0≤i≤k do . . . end for * 1.3 并行算法的一般概念: 并行算法的复杂度 串行算法的度量 一些记号 平均情形复杂度、最坏情形复杂度 * 1.3 并行算法的一般概念: 并行算法的复杂度 并行算法复杂性的度量 运行时间t(n):计算时间tc和选路(路由)时间tr 处理器数目p(n) 成本c(n):c(n)=t(n)×p(n) 成本最优性:若c(n)等于在最坏情形下串行算法所需要的时间,则并行算法是成本最优的。 加速比Sp(n):Sp(n)=ts(n)/tp(n),其中ts(n)为求解问题的最快的串行算法在最坏情形下所需的运行时间,tp(n)为求解同一问题的并行算法在最坏情形下的运行时间。 注:(1)加速比Sp(n)反映算法的并行性对运行时间的改进程度。 (2)若Sp(n)=p(n),则达到线性加速;若Sp(n)p(n),则为超线性加速(一般出现在某些特殊的应用中,如并行搜索等)。 并行效率Ep(n):Ep(n)=Sp(n)/p(n), 0Ep(n)=1 注:反映了并行系统中处理器的利用程度。 工作量(或运算量) W(n):并行算法所执行的总操作步数。(与处理器的数目无关) * 1.3 并行算法的一般概念: 并行算法的WT表示 Brent定理(1974 JACM) 令W(n)是一并行算法A在运行时间T(n)内执行的运算量,则A使用p台处理器可在时间t(n)=O(W(n)/p +T(n))内执行完成。 证明:设时刻 并行算法A做的工作量为Wi(即在(i-1, i]时段内的工作量) ==用p台处理器去完成并行算法A的第i时刻工作量,需时间 ==用p台处理器模拟并行算法A的总时间为 * 1.3 并行算法的一般概念: 并行算法的WT表示 Brent定理 注: (1)揭示了并行算法工作量和运行时间的关系; (2)提供了并行算法的WT(Work-Time)表示方法; (3)告诉我们:设计并行算法时应尽可能将每个时间步的工作量均匀地分摊给p台处理器,使各处理器处于活跃状态。 * 1.3 并行算法的一般概念: 并行算法的WT表示 例1 令n=2k(k=0),求n个数和的并行算法。 算法运行时间:t(n)=O(logn) 总运算量: 由Brent定理知: t(n)=O(n/p+logn) * 1.3 并行算法的一般概念: 并行算法的WT表示 * 1.3 并行算法的一般概念: 加速比性能定律 Amdahl’s Law: Base on Fixed Problem Size 适用于实时应用问题。 当问题的计算负载或规模固定时,我们必须通过增加处理器数目来降低计算时间; 设 f 是算法中不能并行的串行部分比例,Ws和Wp分别是串行和并行部分的工作量,则总工作量W=fW+(1-f)W=Ws+Wp; Amdahl’s law表明:加速比受到算法中串行工作量的限制。 公式推导 * 1.3 并行算法的一般概念: 加速比性能定律 Gustafson’s Law: Base on Fixed Execution Time 适用于要求精度高的应用,通过加大计算量来提高计算精度。 Gustafson’s Law表明:随着处理器数目的增加,串行执行部分f不再是并行算法的瓶颈。 放大问题工作量或规模的加速公式推导: 与p成线性关系。 * 1.3 并行算法的一般概念: 加速比
文档评论(0)