如果MPI程序是作为独立应用程序或通过mpirun启动的,我的MPI程序如何检测?
答案 0 :(得分:2)
考虑到halfuseless和Hristo Iliev的回答和评论,没有通用和便携的方法来做到这一点。作为解决方法,您可以检查由mpirun设置的环境变量。参见例如:
http://www.open-mpi.org/faq/?category=running#mpi-environmental-variables
答案 1 :(得分:2)
没有MPI标准方法来区分直接启动的MPI应用程序或者作为mpirun的单个等级。有关此类MPI作业的更多信息,请参阅“Singleton MPI_Init”。
来自道格拉斯的环境变量检查答案是一个合理的黑客......但是不能移植到任何其他MPI实现。