我的应用程序可以兼容多个版本的MPI

时间:2016-08-20 16:41:30

标签: mpi intel-mpi

我有一个使用MPI_COMM_WORLD的应用程序。我正在使用HPC Pack 2008 R2 MPI构建应用程序,一切都在我的本地和大多数PC上运行良好。

有时在不同的PC上安装时,我会遇到MPI竞争版本(例如英特尔)的问题。这通常通过将我的HPC版本添加到PATH来解决。

我最近遇到了一个我无法解决的问题。

我的MPI是路径中的第一个,但我收到错误“链接库mkl_intel_thread.dll”无法找到。这告诉我应用程序正在查看英特尔版本。

where mpiexec mkl_thread not found

所以我的一般问题是:

  1. 是否有与其他所有版本兼容的MPI版本?
  2. 或者有办法以我能够的方式编译我的应用程序 确保它找到合适的MPI库?
  3. 或者有没有办法编译以使应用程序MPI不可知?
  4. 提前致谢

1 个答案:

答案 0 :(得分:0)

MPI的优势是MPI standard。这意味着只要您坚持使用某个版本的MPI标准,您的程序就应该与符合MPI标准的实现兼容。

缺少的Math Kernel Library与MPI不兼容无关。