什么是一些简单的令人尴尬的并行算法?

时间:2012-04-24 03:54:04

标签: algorithm parallel-processing

我正在为Cicero编写一个测试应用程序,我需要一个简单易懂的并行算法,这个算法很容易理解,但稍微不那么简单,只需在输入中添加一个。

现在,我只对那些只需要“地图”步骤的算法感兴趣。或者,我只对算法的“地图”步骤感兴趣。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

令人尴尬的并行算法通常具有一些数据结构D,这些数据结构D通过某些操作o(例如连接)从元素e组装而成。当你想要将操作X应用于D时,例如计算X(D),你会得到令人尴尬的并行性,你可以通过使用分布律X(D)= X(p)O X(q)得到它,其中D = p o q。通过将D划分为其元素,您可以将X应用于每个元素并相互依赖地计算答案。

许多应用逐个元素操作的矩阵运算(例如,矩阵加,减)是令人尴尬的并行。 FORTRAN具有ELEMENTAL函数,您可以将其应用于旨在用于此类操作的数组。

您可以概括N维中的连接操作或将子图组合在一起的粘合操作。