我想知道Microsoft MPI支持哪些语言?我在https://msdn.microsoft.com/en-us/library/bb524831(v=vs.85).aspx上找不到这些信息但是,内部函数引用只有C ++和FORTRAN文档。因此,我可以说它只支持C ++和FORTRAN吗? 它支持python吗?我更喜欢在我的项目中使用python。 谢谢!
答案 0 :(得分:2)
MS-MPI基于MPICH进行修改,提供MPI标准的C,C ++和Fortran接口。
如果您想要Python(或Rust,或Julia,或您喜欢的任何语言),那么就有很好的第三方软件包。 MPI4PY(对于MPI来说是一个优秀的Python库,并且可以与许多MPI实现一起使用。如果你遇到困难(How to successfully compile mpi4py using MS HPC Server 2008 R2's MPI stack?),请看这个问题但是现在听起来像mpi4py"只是工作"。
乐高积木在这里做了一个很好的比喻。 MPI(任何实现)就像一个很大的底板。也许它是绿色,红色,蓝色,但它是"东西"的标准基础。您不必使用MS-MPI。你可以用任何东西。 mpi4py是一个库。它提供了python例程,并为您提供了C mpi调用。如果它插入绿色底板或红色底板,mpi4py并不关心(太多)。标准API允许这种互操作性
在您的情况下,您想要进行python调用。 mpi4py将为您提供python并为您拨打MS-MPI电话。 mpi4py本身就没用了。它需要一个MPI库。 MS-MPI是适用于您平台的优秀MPI库。您需要先设置MS-MPI,然后设置mpi4py。如果您希望有一天将代码带到其他地方,则可能需要使用不同的MPI库。好消息:标准意味着更换MPI库(因为你想尝试新的东西,或者因为你去了另一个平台)很容易做到