mpi - 如何在 MPICH 中使用 MPI_Info_set 和 MPI_Comm_spawn
问题描述
我需要在集群上使用 MPI spawn。为此,我知道我需要使用 MPI_Info_set 来指定节点将运行生成的进程。我已经尝试过MPI_Info_set(info, "add-host","node1,node2")
,但它不起作用。
下面,我提供了一个生成代码的小示例:
MPI_Info info;
MPI_Info_create(&info);
MPI_Info_set(info,"add-host","node1,node2");
MPI_Comm_spawn("./mpiworker", MPI_ARGV_NULL,
dynamic_procs,
info, 0, MPI_COMM_WORLD,
&intercomm,
MPI_ERRCODES_IGNORE);
还有什么我可以使用的吗?
解决方案
参数add-host
可能来自 OpenMPI(手册页),MPICH 不支持它。
对于 MPICH 尝试其中之一:
host
- 为我工作,hosts
- 应该可以工作,但是,它似乎在我当前使用的版本中被破坏了,并且 MPI 在作为参数值传递的第一个节点处生成所有进程;如果您的情况也发生这种情况,我建议使用MPI_Comm_spawn_multiple
.
另外,我不知道如何找到所有受支持参数的列表——我认为 MPICH 的人不太注意保持文档的完整性。
推荐阅读
- react-native - React Native Elements 处理选定的 ListItem 样式
- c# - svcutil.exe => 无法从 https://........svc?wsdl 获取元数据
- react-native - 根据 ID 隐藏元素
- javascript - 哪个将使用更少的内存 - 多个对象变量,或者可以在需要时返回任何一个相同对象的单个函数?
- javascript - 如何在没有列表的情况下以 react-native 显示 JSON 数据?
- sql-server - “MSXML2.ServerXMLHTTP”请求在 SQL Server 中返回 NULL
- c - uint32_t * uint32_t = uint64_t 向量乘法与 gcc
- java - 从 Hadoop 的 MultipleInputs 和 MultipleOutputs 生成单个文件
- data-structures - 代码部队 607A。得到错误的答案
- python - 在 pandas 和 numpy 中恢复丢失的行和列名