mpi - 我可以从执行的程序中获取 mpiexec 命令行参数吗?

标签 mpi

当我运行 mpiexec 来运行并行程序时,用户可能会向 mpiexec 传递许多选项。是否有 MPI 调用来从已执行的程序中访问此命令行参数?

最佳答案

这一切都明确地超出了标准,所以 YMMV,但通常不会 - 执行的程序永远不会看到 mpiexec 参数。 mpiexec 是一个进程启动器,参数是进程启动器,然后仅使用可执行文件的命令行参数启动进程。

如果您需要这些参数,您可以编写一个包装脚本,在执行之前将命令行输出到一个文件,并让进程读取它们;但如果有人直接使用 mpiexec 运行,这将失败。

通常应该适用于给定环境但仍然完全非标准并且不能很好地跨环境(例如,linux vs windows)的东西是让 MPI 任务 0 检查它的 shell 命令历史并尝试从中提取论据。

关于mpi - 我可以从执行的程序中获取 mpiexec 命令行参数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14583928/

相关文章:

linux - 好奇如何指定MPI的核数才能达到最快的科学计算

c - 为什么我的 MPI 程序没有按预期打印

C:信号代码:地址未映射(1)mpirecv

linux - 删除所有以前版本的 MPI 并正确重新安装它

c - MPI_Send 发送矩阵的正确方法

c++ - OpenMPI 编译错误

c - MPI 分散/发送数据到进程

c++ - MPI_ERR_TRUNCATE : On Broadcast

mpi - MPI_* 函数和 PMPI_* 函数之间有什么区别?

compilation - 找不到mpif.h编译错误?