首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >mpirun、mpiexec和mpiexec.hydra有什么区别和联系?

mpirun、mpiexec和mpiexec.hydra有什么区别和联系?
EN

Stack Overflow用户
提问于 2016-05-22 09:43:54
回答 1查看 10.9K关注 0票数 16

我搞混了3件事: mpirun、mpiexec和mpiexec.hydra

在我的集群上,它们都存在,而且它们都属于英特尔。

它们之间有什么区别和联系?尤其是,mpiexec.hydra到底是什么?为什么在mpiexec和九头蛇之间有一个点,这是什么意思?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-22 15:54:34

mpirunmpiexec基本上是相同的-在许多MPI实现中都是进程启动器的名称。MPI标准没有说明如何启动和控制队列,但它建议(尽管没有要求),如果有任何类型的启动器,它应该命名为mpiexec。一些MPI实现从mpirun开始,然后为了兼容而采用mpiexec。其他的实现做了相反的事情。最后,大多数实现都以这两个名称提供它们的启动器。在实践中,mpirunmpiexec所做的应该没有区别。

不同的MPI实现具有不同的启动和控制进程的方法。MPICH从名为MPD (多用途守护程序或其他东西)的基础设施开始。然后它切换到更新的Hydra进程管理器。由于Hydra的工作方式与MPD不同,因此基于Hydra的mpiexec采用与基于MPD的命令行参数不同的命令行参数,并且为了使用户能够显式选择基于Hydra的命令行参数,它以mpiexec.hydra的形式提供。旧的被称为mpiexec.mpd。有可能有一个基于MPICH的MPI库,它只提供九头蛇启动器,然后mpiexecmpiexec.hydra将是相同的可执行文件。英特尔MPI基于MPICH,其较新版本使用Hydra进程管理器。

Open MPI构建在Open Run-Time Environment (ORTE)之上,它自己的进程启动器被称为orterun。为了兼容,orterun也被符号链接为mpirunmpiexec

总结一下:

  • mpiexec.something是给定implementation
  • mpiexec的MPI进程启动器的特定版本,mpirun是通用名称,通常是实际launcher
  • both mpiexec的副本或符号链接,mpirun应该做相同的
  • 一些实现将其启动器命名为mpiexec,一些实现将其命名为mpirun,一些实现将其同时命名为mpirun,并且当多个MPI实现同时在系统路径中可用时(例如,当从发行版软件包安装时)

通常是混淆的来源

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

https://stackoverflow.com/questions/37369733

复制
相关文章

相似问题

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