我正在研究各种并行编程模型,但我偶然发现了 MPI。有几件事我不确定。据我了解:
- MPI的主要功能是允许在集群中并行运行的相关进程之间进行通信。这个对吗?
- 程序在主节点上运行,主节点又将特定任务传达给工作节点 - 并接收结果。无需在每个工作节点上都保留一份代码副本。
此外,我发现的少数更新的 MPI 框架似乎只支持一组受限制的语言。我正在考虑在 Java 中对此进行试验,但我发现的所有 Java MPI 库要么已经过时,要么似乎没有 C 和 Fortran 的成熟度。这是为什么?我认为消息传递对于编写并行或分布式程序的任何人来说都是一个非常有用的功能,那么为什么 MPI 在其利基市场之外没有更受欢迎呢?