有MPI存根库吗?

时间:2011-11-27 11:53:06

标签: mpi

我有来自MPI电话的C源。

我想知道我可以通过链接一些MPI存根库从源代码获得顺序程序吗?我在哪里可以获得这个lib?

3 个答案:

答案 0 :(得分:5)

大多数正确编写的MPI程序不应该依赖于他们用来获得正确答案的进程数量 - 例如,如果你在一个进程上运行它们(mpirun -np 1 ./a.out)它们仍应该工作。所以你不需要存根库 - 只需使用MPI。 (如果由于某种原因你只是不想要无关的库,那肯定是可能来编写存根并链接它们 - 我在我的笔记本电脑上设置MPI的那天回复了一个巨大的PITA,您可以使用this作为起点并添加您需要的任何功能。但是现在,摆弄存根库可能比仅仅使用现有的MPI实现更多的工作。)

如果您的MPI程序当前在一个处理器上正常工作,则存根库可能无济于事;你需要找到它没有处理和修复它们的特殊情况。

答案 1 :(得分:3)

我不认为这是可能的。与OpenMP相反,当您简单地删除MPI部分时,使用MPI的程序不一定运行或产生相同的结果。

答案 2 :(得分:0)

PETSc包含一个存根MPI库,适用于一个进程(即串行)执行。我没有方便的链接,但如果谷歌没有为您找到它,将会在以后查找。