正在加载图片...
程序的长短在粗粒度和细粒度兩种类烈的犷法之 间。 棂据并行计算的基本对可以分为:数值并行计和非数 并行计。际上网者之间外无严格的界限。非数值计算也会用 于高贛度数值讣算,数值计算中也会有查找、匹配亭非数值计算 成分。实际分类时,主戛是权据主要的计犷量所属范嚼以及宏观 的计算方法来判斷。 根据外行计选程间的赖关系可以分为 (1)同乡并行算法;该算法是过一个全局的时钟来控制 部分的步世。将任翕中的各个部分计犷同步地向前 (2)异步并行算法;它执行的吝部分计算步化之间没有关 联,互不同步;在操作中,咆们根据计过程的不同 阶段决定穆、继鲼成终止。对于SDM并行计算机一 舭适合用同步并行算法,而MM并行计算机则适合用 异步外行算法。 §10.3并行编程 设计一个高放的外行法并不是一件容易的事。它的设计过 程比較复杂。通常编程设计过程可以分为四步 ●任务划分( Partitioning)。该阶斆将蓬个倇用域或功能分解程序的长短在粗粒度和细粒度两种类型的算法之 间。 根据并行计算的基本对象可以分为:数值并行计算和非数值 并行计算。实际上两者之间并无严格的界限。非数值计算也会用 于高精度数值计算,数值计算中也会有查找、匹配等非数值计算 成分。实际分类时,主要是根据主要的计算量所属范畴以及宏观 的计算方法来判断。 根据并行计算进程间的依赖关系可以分为: (1) 同步并行算法;该算法是通过一个全局的时钟来控制 各部分的步伐,将任务中的各个部分计算同步地向前 推进。 (2) 异步并行算法;它执行的各部分计算步伐之间没有关 联,互不同步;在操作中,它们根据计算过程的不同 阶段决定等待、继续或终止。对于 SIDM 并行计算机一 般适合用同步并行算法,而 MIMD 并行计算机则适合用 异步并行算法。 §10. 3 并行编程 设计一个高效的并行算法并不是一件容易的事,它的设计过 程比较复杂。通常编程设计过程可以分为四步: z 任务划分(Partitioning)。该阶段将整个使用域或功能分解
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有