如何让mpi4py运行?

2024-10-02 00:34:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我对并行编程的概念还不熟悉。我应该为一个项目使用mpi4run,但我不知道如何实际运行它。例如,如果要运行此代码:

from mpi4py import MPI
import numpy as np

comm = MPI.COMM_WORLD
rank = comm.Get_rank()

if rank == 0:
    numData = 5  
    data = np.linspace(0.0,3.14,numData)  
else:
    numData = None
numData = comm.bcast(numData, root=0)
if rank != 0:    
    data = np.empty(numData, dtype='d')  
comm.Bcast(data, root=0) 
print('Rank: ',rank, ', data received: ',data)

如果我从空闲状态直接运行,我得到:

排名:0,收到数据:[0。0.785 1.57 2.355 3.14]

但是,如果我理解正确的话,这不是我们运行并行计算的方式,对吧?在网上,我发现有人用写作来运行它

mpirun-n4 python脚本.py。在

我的问题是,我要在哪里输入?我尝试过cmd和pythonshell,但是我遇到了错误、语法错误等等。我觉得这里有些东西我不明白。有什么提示吗?在


Tags: 项目代码fromimport概念dataif编程
1条回答
网友
1楼 · 发布于 2024-10-02 00:34:45

使用MPI命令的Python程序必须使用称为mpirun的MPI解释器来运行。在

最简单的方法是创建一个干净的conda环境并在那里安装mpi4py。在

如果您在Linux上并安装了Anaconda Python,则如下所示:

$ conda create -n mpi_env
$ source activate mpi_env
(mpi_env) $ conda install mpi4py
(mpi_env) $ which mpirun # test if the MPI interpreter is correctly installed
/anaconda/envs/mpi_env/bin/mpirun
(mpi_env) $ mpirun -n 4 python script.py # run your python script, using 4 processes.

有关详细信息,请参阅this tutorial。在

对于Windows,您需要安装mpiexec。有关安装说明,请参见here。在

相关问题 更多 >

    热门问题