用MPICH静态编译的程序会遇到不同版本的运行时间问题?

问题描述:

我还没有读过很多关于MPI的实现,但是我被要求建立一个第三方软件,它与一个运行MPICH2运行时版本1.2.1的环境静态链接到MPICH2的1.4.1pl版本。用MPICH静态编译的程序会遇到不同版本的运行时间问题?

我应该期待问题吗?

+1

不是100%确定,但是在编译一个带有一个MPI安装的库之前,我有问题,然后使用另一个安装中的“mpirun”运行它。你有没有使用不同的版本? – GradGuy 2012-03-24 21:29:23

+0

我不确定这是否会中断,但这肯定是可能的,具体取决于mpiexec + mpd在这些版本之间有多少差异,并且如果出现问题,这将是我首先要考虑的事情。如果第三方软件带有完整的mpi安装 - 例如版本相应的mpiexec和mpd - 那么你应该没问题,但是你需要确保其他版本不在你的可执行文件或库路径中。如果没有,我建议安装MPICH2安装程序的1.2.1版本,并在运行此软件包时使用它。 – 2012-03-24 22:32:13

它可能会工作,但它并不理想。 1.2.1中肯定存在一些早已修复的错误。而且,由于我们通常不会测试混合版本安装,所以在混合版本安装中可能会出现错误。

如果您有1.2.1环境(非默认流程管理器或PMI库)的奇怪配置,那么问题的几率会大大增加。