algorithm - 有哪些简单的令人尴尬的并行算法?

标签 algorithm parallel-processing

我正在为 Cicero 编写测试应用程序我需要一个简单的、令人尴尬的并行算法,该算法易于理解,但在输入中加一时稍微不那么简单。

现在,我只对只需要“映射”步骤的算法感兴趣。或者,我只对算法的“映射”步骤感兴趣。

有什么想法吗?

最佳答案

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

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

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

关于algorithm - 有哪些简单的令人尴尬的并行算法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10291527/

相关文章:

c++ - 指针在 OpenMP 并行部分中是私有(private)的吗?

algorithm - 生成均匀分布的随机噪声

SQL Server 代码未并行执行

java - 匹配规则集与 Java 中的输入数据集

regex - 从标记数据集中提取正则表达式的技术

c++ - CUDA + C++ 不能一起玩

c++ - TBB 与本土工作队列

java - ThreadPoolExecutor与Android的线程优先级

algorithm - 为什么我的立方根算法是错误的? SICP 练习 1.8

javascript - JS - 为什么 Codewars 挑战的一项测试返回未定义,而其他 104 项测试却通过了?