【发布时间】:2014-01-15 13:11:47
【问题描述】:
我正在使用 Intel TBB 来创建并行的 Eratosthenes 筛子。我已经用 C 语言在 MPI 中完成了这项工作。
所以,我希望我的第一个线程(或任务?)找到一个素数,然后广播到其他线程,以便他们都可以从数组的一部分“交叉”这个素数。
问题是:我找不到方法:
检测第一个线程或任务。
让其他人等到第一个线程或任务广播它的素数。
我已经了解如何使用 reduce 等,但我找不到这个。我找到了一个使用一些非常快的 Eratosthenes 算法的示例,但根本没有同步,而且算法不同,我需要并行这个确切的默认算法。
提前致谢!
【问题讨论】:
标签: multithreading intel tbb sieve-of-eratosthenes