0

我正在 Linux 中编写 C 代码(可能稍后在 Windows 中),该代码包括具有并行处理的大规模线性代数计算。我正在使用处理大量工作的 GotoBLAS2。仍然有一些矩阵计算(尤其是稀疏矩阵)应该手动执行。我在互联网上搜索并找到了一些库,例如 Open MP。此外,线程似乎很有帮助。在 C 中进行并行计算的最佳方法是什么?谢谢

关于我的代码的附加信息:我特别关注稀疏矩阵向量乘法。另外,我有一大组向量 {v1, v2, v3, v4, ...},这些向量应该乘以不同的数字,这可以使用并行计算来执行。谢谢

4

1 回答 1

3

这真的是一个“讨论”类型的问题,而不是“这里有问题,谁能帮我解决?” 类型。“最佳方法”是主观的。我非常喜欢 OMP——它为你处理了大量的线程管理。最后,“最好的”是你可以有效使用的东西。一个强大的工具在坏人手中是不好的。您可以在一天内学习足够多的 OMP,以通过几乎您机器上的处理器数量来加速一些关键循环——这让我投票。

于 2013-01-26T22:17:08.603 回答