【发布时间】:2021-11-16 02:58:45
【问题描述】:
如何使用 MPI 配置程序,以便将处理器总数分成 M 个组。
例如使用如下命令:
mpirun -np 4 ./a.out
在如下所示的文件树中,所有 *.out 文件都配置为使用 MPI 运行
a.out
b.out
c.out
在程序内:
Processors 0 and 1 -> ./b.out
Processors 2 and 3 -> ./c.out
【问题讨论】:
-
您有两个进程在运行
b.out和两个c.out。那么a.out会在哪里?你想启动那个程序,但没有人在运行它? -
尝试 MPMD 语法:
mpirun -np 2 ./b.out : -np 2 ./c.out。另一种选择是构建单个二进制文件(可以说是b.out和c.out子例程)和MPI_Comm_split()并调用适当的子例程。 -
@VictorEijkhout 用户调用
./a.out-./b.out和./c.out也可以视为用户不能直接调用的库 -
@GillesGouaillardet 我不熟悉
MPI_Comm_split()你能举个例子吗?
标签: mpi