我尝试从python调用Fortran的MPI。
在helloworld.f90中,我写:
subroutine sayhello(comm)
use mpi
!include 'mpif.h'
implicit none
integer :: comm, rank, size, ierr
call MPI_Comm_size(comm, size, ierr)
call MPI_Comm_rank(comm, rank, ierr)
print *, ’Hello, World! I am process ’,rank,’ of ’,size,’.’
end subroutine sayhello
还有另一个叫做hello.py:
from mpi4py import MPI
import helloworld
fcomm = MPI.COMM_WORLD.py2f()
helloworld.sayhello(fcomm)
但是,在Ubuntu 18.04中,我使用Python 3.7.4,无法使用命令创建file.so:
f2py -m helloworld -h helloworld.pyf helloworld.f90
f2py -c helloworld.pyf hello.py
当我运行命令时:
mpirun.openmpi was unable to find the specified executable file, and
therefore
did not launch the job. This error was first reported for process
rank 0; it may have occurred for other processes as well.
您能帮我解决此错误或提供其他要运行的命令吗?>
我的计算机可以从Python打开Fortran的MP。另外,我可以在Fortran中运行MPI。但是,我无法从Python调用Fortran的MPI。
任何帮助将不胜感激
我尝试从python调用Fortran的MPI。在helloworld.f90中,我写:子例程sayhello(comm)使用mpi!include'mpif.h'隐式无整数:: comm,等级,大小,错误调用MPI_Comm_size(comm,...
我只想对此问题发表一些评论。我在Ubuntu 18.04中创建Python模块。实际上,它是WSL(Windows子系统)。我运行的是openMPI 1.10.7(太旧了),但这是我的版本。我的测试是使用numpy 1.16.5和Python 2.7.15进行的。