首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >单进程MPI

单进程MPI
EN

Stack Overflow用户
提问于 2014-10-17 10:23:58
回答 1查看 622关注 0票数 0

我是集群技术的新手,我正在为我的公司测试一个MPICH2集群解决方案。

我们有一个c程序,它的作用实际上是这样的:

  • 有一个主进程连接到数据库并准备数据。
  • 主进程使用不同的命令行参数创建一些子进程(从进程是使用fork()命令创建的)

是否可以在MPICH2集群上运行这些进程而不进行修改?否则,在集群上运行这个程序需要什么修改?

感谢所有

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-17 15:19:17

不要混淆单个机器上的并行进程和分布式进程(通过MPI),因为它们不是一回事。今天还有另外一个问题,也有同样的问题,所以我会告诉你这个问题的答案:https://stackoverflow.com/a/26428033/491687

调用fork()只会在同一台机器上创建与主进程相同的更多进程。如果您只使用共享内存和几个进程,这很好。但是,如果您需要使用大量的进程(进程的数量>核心的数量,粗略地说)来处理大量的数据,那么MPI可能会很有帮助,因为它允许您将多台机器连接在一起,并在它们之间传递数据。

所以简单的回答是:不,不修改就不能使用MPI。要将叉/连接程序转换为MPI程序,需要进行大量的修改。那是故意的。他们不会试图解决同样的问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26422972

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档