并行解决多个小型线性系统

时间:2018-10-02 22:27:41

标签: linear-algebra eigen eigen3

我想在算法的每次迭代中求解10个线性系统(Ax = b)。

每个系统的A约为10 x 11(超定)。

CPU具有8个核心。

如果我要求每个CPU解决10个线性系统之一,则6个cpu必须等待最后2个系统的解决。

如果我使用多线程求解器一个一个地解决每个系统,性能会很差吗?由于矩阵A很小,我担心虚假共享。

Eigen是否有针对这种情况的多线程求解器?

再次感谢。

1 个答案:

答案 0 :(得分:2)

尝试在如此小的问题(10 x 11)中利用多线程只会减慢速度。如果您想比并行运行10个解决方案做得更好,请尝试在管道中查找更多并行任务。