MPICH是否支持跨平台执行?

时间:2016-02-26 07:01:55

标签: parallel-processing mpi platform mpich

我发现MPICH二进制文件可用于Windows和Linux。但是我不明白我是否可以为两个平台使用-n开关指定的相同可执行文件,还是需要交叉编译我的可执行文件?

1 个答案:

答案 0 :(得分:0)

尽管您可以交叉编译,但也许您可以考虑运行MPI应用程序,就好像它由不同的二进制文件组成(每个平台一个)。这样你就可以避免处理交叉编译以及处理所有的库。

要实现这一点,mpiexec [http://www.mpich.org/static/docs/v3.1/www1/mpiexec.html]允许您传递多个二进制文件(甚至每个平台一个),就好像您的应用程序是MPMD一样。

  

概要

mpiexec args executable pgmargs [ : args executable pgmargs ... ]
     

其中args是mpiexec的命令行参数(见下文),可执行文件是可执行MPI程序的名称,而pgmargs是   可执行文件的命令行参数。 可以使用多个可执行文件   使用冒号表示法指定(对于MPMD - 多程序   多个数据应用程序)。

因此,如果您想在 system1 上生成4个进程,在 system2 上生成4个进程,则可以使用以下命令:

mpiexec -np 4 -host <system1> <binary-system-1> <params> : -np 4 -host <system2> <binary-system-2> <params>
相关问题