用于将nxn矩阵与$ \ Theta(n ^ 2 / lgn)$并行性相乘的多线程算法

时间:2014-04-18 21:56:36

标签: multithreading algorithm

我想找到一个多线程算法,将$ nxn $矩阵乘以一个n-vector,实现$ \ Theta(n ^ 2 / lgn)$ parallelism,同时保持$ \ Theta(n ^ 2)$ work。< / p>

我知道一个非法的解决方案,但有关如何使跨度的提示下降到$ \ Theta(lgn)$?

1 个答案:

答案 0 :(得分:1)

CLRS 教科书中的程序名为 MAT-VEC ,实现了此问题。但它的跨度是 Theta of N 。要将其降低到对数跨度,您可以使用多线程除法和替换来替换内部for循环中的串行求和。征服战略。为了做到这一点,递归地划分范围并将一侧与另一侧并行生成,然后同步并返回左右对齐的值。