python-3.x - 判断Python程序是否并行运行

标签 python-3.x mpi4py

有没有办法通过mpirunmphexec来查明Python程序是否并行运行。我以为我可以通过获取 sys.argv 来获取此信息,但它不在那里。有什么方法可以获取此信息,也许可以通过查看 mpi4py 模块?

最佳答案

如果您使用mpi4py包,您可以检查MPI_COMM_WORLD通信器的大小是否大于1。如果是,那么您正在并行运行。如果没有,那么您只在一个进程上运行。请注意,即使使用 mpirun 命令运行脚本(例如 mpirun -n 1 python test.py),您也只能在一个进程上运行

您可以使用以下代码行获取 MPI_COMM_WORLD 通信器的大小:

from mpi4py import MPI
comm = MPI.COMM_WORLD
size = comm.Get_size()

关于python-3.x - 判断Python程序是否并行运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55968020/

相关文章:

python - 如何让 pandas 将 xlsx 文件(包括其工作表)复制到新的 xlsx 文件中

python线程事件: why do we need clear()

python - 该程序中的某些进程是否可能比其他进程完成得更快?

python - 使多处理池适应 mpi4py

python - pyCuda,发送多个单变量参数的问题

python - 通过python从名称列表中提取最后两个字母

python-3.x - 将 numpy 数据集转换为 netCDF

python - 使用 Python (mpi4py) 在 Google Cloud Engine 上进行分布式编程

ipython - 如何在 IPython 笔记本中使用 mpi4py?

python - MPI.Op 和执行操作