mpiexec_logon01: cannot connect to local mpd (/tmp/mpd2.console_ycai)
2014-01-02 13:12
274 查看
问题描述:
想在高性能计算中心集群上运行一个简单的mpi程序,输入命令
mpirun -n 4 ./Demo_00.exe
后却出现如下提示:
mpiexec_logon01: cannot connect to local mpd (/tmp/mpd2.console_ycai); possible causes:
1. no mpd is running on this host
2. an mpd is running but was started without a "console" (-n option)
In case 1, you can start an mpd on this host with:
mpd &
and you will be able to run jobs just on this host.
For more details on starting mpds on a set of hosts, see
the MPICH2 Installation Guide.
解决办法:
$ cd $HOME
$ touch .mpd.conf
$ chmod 600 .mpd.conf
然后运行mpdboot。
然后运行就没问题了,不过运行的时候要注意这样用命令:
mpirun -n 4 ./Demo_00.exe
不要这样: mpirun -n 4 Demo_00.exe ,这样出现如下提示:
problem with execution of Demo_00.exe on logon01: [Errno 13] Permission denied
problem with execution of Demo_00.exe on logon01: [Errno 13] Permission denied
problem with execution of Demo_00.exe on logon01: [Errno 13] Permission denied
P.S:本文在解决问题时参考帖子:点击打开链接
另外可以阅读该文章:点击打开链接
总结:
MPICH2提供进程管理与通信的分离。默认的运行时环境由一系列的守护进程(daemons)叫mpd的组成,在应用程序启动前建立所用机器之间的通讯,因而在通信不能建立出错时提供了清晰的画面,在并行任务(job)启动时提供一种快速可度量的启动机制(可以简单的把mpd看成mpi的进程管理器,欲要mpi进行作业首先先配置好mpd)。
这个问题的出现有可能是没有启动mpd,mpd的启动命令是mpdboot,所以说一般用mpdboot启动mpd就好了,启动前可以先用mpdtrace命令查看是否有mpd进程。
另外退出mpd的命令是mpdallexit
附 MPI常见命令:
1. mpdboot:
启动集群mpd守护进程,在运行MPI程序前必须开启每个节点上的mpd守护进程。
常用的参数: -n nodenum,需要启动的节点数量
-f hostsfile节点列表,与-n 一起使用表示启动节点列表中的nodenum个节点。
若没有-n选项,则只启动本地mpd进程。
2. mpdtrace:
查看集群mpd守护进程。
常用参数: -l 输出mpdid和IP
3. mpdexit:
杀死mpd守护进程。
常用参数: mpdid
4. mpdallexit:
杀死所有的mpd守护进程。
5. mpicc:
MPI程序编译命令。
常用参数: -g 加入调试信息。
6. mpiexec:
MPI程序运行命令,运行前必须开启mpd守护进程。
常用形式: mpiexec
mpiexec : \
mpiexec –configfile
其中, 全局选项运用于所有MPI进程。
本地选项应用于部分MPI进程集合。
可执行文件的路劲。
包含命令行选项的文件。
全局选项中常用参数:-gdb 调试运行
-machinefile MPI进程分配文件。
本地选项中常用参数:-n num 设置执行MPI程序的进程总数
注意:全局选项和本地选项顺序不要弄错。
7. mpirun:
MPI程序快速执行命令,运行前不必运行mpdboot开启守护进程。
8. mpd测试命令:mpdcheck和mpdringtest
mpdcheck用来检查mpi安装和运行时的故障和异常。
mpdringtest测试一个mpd回环的传输时间。
9. mpd帮助命令:mpdhelp
mpdhelp显示所有mpd命令。
想在高性能计算中心集群上运行一个简单的mpi程序,输入命令
mpirun -n 4 ./Demo_00.exe
后却出现如下提示:
mpiexec_logon01: cannot connect to local mpd (/tmp/mpd2.console_ycai); possible causes:
1. no mpd is running on this host
2. an mpd is running but was started without a "console" (-n option)
In case 1, you can start an mpd on this host with:
mpd &
and you will be able to run jobs just on this host.
For more details on starting mpds on a set of hosts, see
the MPICH2 Installation Guide.
解决办法:
$ cd $HOME
$ touch .mpd.conf
$ chmod 600 .mpd.conf
然后运行mpdboot。
然后运行就没问题了,不过运行的时候要注意这样用命令:
mpirun -n 4 ./Demo_00.exe
不要这样: mpirun -n 4 Demo_00.exe ,这样出现如下提示:
problem with execution of Demo_00.exe on logon01: [Errno 13] Permission denied
problem with execution of Demo_00.exe on logon01: [Errno 13] Permission denied
problem with execution of Demo_00.exe on logon01: [Errno 13] Permission denied
P.S:本文在解决问题时参考帖子:点击打开链接
另外可以阅读该文章:点击打开链接
总结:
MPICH2提供进程管理与通信的分离。默认的运行时环境由一系列的守护进程(daemons)叫mpd的组成,在应用程序启动前建立所用机器之间的通讯,因而在通信不能建立出错时提供了清晰的画面,在并行任务(job)启动时提供一种快速可度量的启动机制(可以简单的把mpd看成mpi的进程管理器,欲要mpi进行作业首先先配置好mpd)。
这个问题的出现有可能是没有启动mpd,mpd的启动命令是mpdboot,所以说一般用mpdboot启动mpd就好了,启动前可以先用mpdtrace命令查看是否有mpd进程。
另外退出mpd的命令是mpdallexit
附 MPI常见命令:
1. mpdboot:
启动集群mpd守护进程,在运行MPI程序前必须开启每个节点上的mpd守护进程。
常用的参数: -n nodenum,需要启动的节点数量
-f hostsfile节点列表,与-n 一起使用表示启动节点列表中的nodenum个节点。
若没有-n选项,则只启动本地mpd进程。
2. mpdtrace:
查看集群mpd守护进程。
常用参数: -l 输出mpdid和IP
3. mpdexit:
杀死mpd守护进程。
常用参数: mpdid
4. mpdallexit:
杀死所有的mpd守护进程。
5. mpicc:
MPI程序编译命令。
常用参数: -g 加入调试信息。
6. mpiexec:
MPI程序运行命令,运行前必须开启mpd守护进程。
常用形式: mpiexec
mpiexec : \
mpiexec –configfile
其中, 全局选项运用于所有MPI进程。
本地选项应用于部分MPI进程集合。
可执行文件的路劲。
包含命令行选项的文件。
全局选项中常用参数:-gdb 调试运行
-machinefile MPI进程分配文件。
本地选项中常用参数:-n num 设置执行MPI程序的进程总数
注意:全局选项和本地选项顺序不要弄错。
7. mpirun:
MPI程序快速执行命令,运行前不必运行mpdboot开启守护进程。
8. mpd测试命令:mpdcheck和mpdringtest
mpdcheck用来检查mpi安装和运行时的故障和异常。
mpdringtest测试一个mpd回环的传输时间。
9. mpd帮助命令:mpdhelp
mpdhelp显示所有mpd命令。
相关文章推荐
- Nexenta *Raidz* Disk replacement via NMV
- opencv之级联分类器训练opencv_traincascade
- 使用Paint事件重画GroupBox来修改边框颜色
- TIME_WAIT
- Container.ItemIndex 获取到行的序号
- 有关foxmail7.1版本导入联系人名单csv的方法
- Invalidate、OnPaint、OnEraseBkgnd函数
- WaitHandle 类 备忘
- 8583报文详细分析 (转载,原创:小马blog.csdn.net/pony_maggie/article/details/6568192)
- Freeradius : 执行 radiusd -X Failed
- poj 1995 Raising Modulo Numbers
- main(int argc, char **argv)参数argc,argv说明和指向指针的指针变量
- finsh indexMain
- Django瞎搞了,使用authenticate时只认username不认email
- 初识DDD(Domain Driven Design) (二):软件架构视角
- 设置 crossdomain.xml 文件实施 HTTP 流式传输
- flash跨域策略文件crossdomain.xml配置详解
- MFC OnPaint()函数中最先调用CDialog::OnPaint()和最后调用CDialog::OnPaint()的巨大区别
- 领域驱动设计(Domain Driven Design)参考架构详解
- 记一次AIX下做系统镜像的记录