【发布时间】:2016-03-22 07:04:51
【问题描述】:
在this 帖子中,我使用的mpirun 版本有问题。一个快速的解决方案(即使它没有解决所有问题)是在我的PATH 环境变量中添加openmpi 版本的mpirun 的路径,这样我的shell 就知道在查找此命令时首先要查找那里。
在我使用的另一个代码中,我需要调用mpif77 的intel 版本。一种快速的解决方案是再次将正确的路径添加到我的环境变量中。但是,这意味着我只能让一个代码自动运行,而对于其他代码,我需要进行一些预处理以确保我链接了正确版本的 mpi 命令。
有没有办法绕过它?例如,我只想将mpif77 链接到它的intel 版本,而mpic++ 只链接到openmp 版本,而不是通过PATH 环境变量进行链接,如果你只使用任何一个openmp,这最终会很方便或英特尔,但不是两者兼而有之。
【问题讨论】:
-
查看模块。为此,它们通常用于超级计算机,但也用于其他 Unix 计算机。或者,您可以准备一个短脚本,在 MPI 库之间切换并设置正确的
PATH变量。 -
英特尔 MPI 以不同的方式命名其特定于英特尔的编译器包装器:
mpiicc(注意额外的i)、mpiifort等