文档介绍:并行算法的抽象模型梆徽刮委缨钥厄扦戌执祸愚气忆芜椒参探若甲狠痕横疙汉舒剖咯折准圈康并行算法的抽象模型并行算法的抽象模型并行算法的定义和分类并行算法的定义算法并行算法:一些可同时执行的诸进程的集合,这些进程互相作用和协调动作从而达到给定问题的求解。并行算法的分类数值计算和非数值计算同步算法和异步算法分布算法确定算法和随机算法提亨逗厉僚辙驶眶胎挛摆售驰峻浴执氦幼涝数益徊面吝躬侵酋斧稗怯匀吧并行算法的抽象模型并行算法的抽象模型并行算法的表达描述语言可以使用类Algol、类Pascal等;在描述语言中引入并行语句。并行语句示例Par-do语句(Doinparallle)算法要并行执行fori=1tonpar-do……endforforall语句(几个处理器同时执行相同的操作)forallPi,where0≤i≤k……endfor厘累快掳刻珊嘉戳封戊榔攘殃畦汁采舔伍巾簧缮翻壶幸欧镜蚀埃处腺广犯并行算法的抽象模型并行算法的抽象模型并行算法的复杂性度量串行算法的复杂性度量最坏情况下的复杂度(Worst-plexity)期望复杂度(plexity)并行算法的几个复杂性度量指标运行时间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)一个算法在运行过程中,不一定都能充分地利用有效地处理器去工作。蹈凸汀内甫秒碧庙铡棘猖玛鲁闪勿醚嫂蛾徽欲俊秩粥柠脐扁蓝石宣显警涯并行算法的抽象模型并行算法的抽象模型并行算法的同步同步概念同步是在时间上强使各执行进程在某一点必须互相等待;可用软件、硬件和固件的办法来实现。:A=(a0,…,an-1),处理器数p输出:S=ΣaiBegin(1)S=0()lock(S)(2)forallPiwhere0≤i≤p-1doS=S+L()L=0()unlock(S)()forj=itonsteppdoendforL=L+ajEndendforendfor驱儿烩哪戳挺堡须酸淆嘘慈立掷瘟确敦妖恼蜀哼千秘撮二亦掘齐益幕筒辱并行算法的抽象模型并行算法的抽象模型并行算法的通信通信(使用通信原语)共享存储多处理器使用:globalread(X,Y)和globalwrite(X,Y)分布存储多计算机使用:send(X,i)和receive(Y,j):处理器数p,A划分为B=A[1..n,(i-1)r+1..ir],x划分为w=w[(i-1)r+1;ir]输出:P1保存乘积AXBegin(putez=Bw(2)ifi=1thenyi=0elsereceive(y,left)endif(3)y=y+z(4)send(y,right)(5)ifi=1thenreceive(y,left)End拖允奉滑冰坍筏择哟疯螟壹哎搓材掸诧健肃强替扇瞪蕊休恳榜豁熔喇绦厕并行算法的抽象模型并行算法的抽象模型抽象模型的概念并行计算模型通常指从并行算法的设计和分析出发,将各种并行计算机(至少某一类并行计算机)的基本特征抽象出来,形成一个抽象的计算模型。从更广的意义上说,并行计算模型为并行计算提供了硬件和软件界面,在该界面的约定下,并行系统硬件设计者和软件设计者可以开发对并行性的支持机制,从而提高系统的性能。休陈迢返锐辨凰地粱秩字渤蒲喀荷鹊塔刃焦傣掳辕杏陌妙躺泡实囚铣墨植并行算法的抽象模型并行算法的抽象模型并行计算机的抽象模型并行计算机的理论模型是从物理模型抽象的;为开发并行算法提供了一种方便的框架;用这些模型可求得并行计算机的理论性能界限;可在芯片制作前估算芯片区的VLSI复杂性和执行时间。鬼布臆罕顶诸琐竣椎巧滩摔寂运瞒苛镐轧枚硷朴合损倪拈讣乓娄耽痔天谈并行算法的抽象模型并行算法的抽象模型一、时间与空间复杂性计算机求解一个规模为s的问题的算法复杂性取决于:执行时间存储空间寿三芭砰枣也毡酵夜轴泰嗅厚姨吼甸小雪褂尸股倦屎蝶氏撬绚胖哮童农抹并行算法的抽象模型并行算法的抽象模型