MPI和消息在朱莉娅传递

时间:2018-02-19 08:34:35

标签: parallel-processing mpi julia physics message-passing

我以前从未使用过MPI,现在我在Julia的项目中我需要学习如何在MPI中编写代码,并且有几个不同参数的代码并行运行,并且不时将每个计算的一些数据发送到另一个的。

我绝对是空白如何在朱莉娅这样做,我从来没有用过任何语言。我安装了库MPI,但没有找到好的教程或文档或者可用的示例。

1 个答案:

答案 0 :(得分:0)

使用Julia进行并行编程有多种方法。

如果问题非常简单,那么使用并行for循环和共享数组就足够了:

https://docs.julialang.org/en/stable/manual/parallel-computing#Parallel-Map-and-Loops-1

但请注意,在这种情况下,您不能使用多个计算节点(例如群集)。

对我来说,Julia中的其他原生构造很难用于更复杂的程序,在我的情况下,我需要重构(显着)我的序列代码才能使用它们。

MPI的优势在于您可以找到大量有关MPI风格(单程序,多数据)编程的文档(但不一定是julia特有的文档)。你可能会发现MPI风格也更加明显。 在大型集群上,您还可以找到优化的MPI库。

一个很好的起点是与MPI.jl分发的示例:

https://github.com/JuliaParallel/MPI.jl/tree/master/examples