ubuntu配置MPICH2运行环境(转)

知道MPI这个名词是靠博客里面一位网友,在我的蚁群算法文章里面他问我是否有用MPI实现过相类似的算法,在此谢谢这个网友,下面讲讲我在了解和学习MPI过程中遇到的问题。
      首先,学习的最好地方自然是MPI的官方网站,http://www-unix.mcs.anl.gov/mpi/ 这里介绍了MPI的来源,目的,如何学习以及MPI标准,这部分有兴趣可以直接看官网,我就不详述了,现在重点说的MPICH2,它是MPI的一个实现版 本,官网是http://www.mcs.anl.gov/research/projects/mpich2/,官网上有一些安装和配置文档非常值得认 真的看一看,我使用的是UBUNTU8.10,虽然有官方安装文档,但我的安装过程却并不是一帆风顺的,后面总结了一下,是因为有些开发包没有安装完 全,ubuntu默认是不安装开发包的,build-essential这个包是一定要安装的,这包里面含GCC等各类编译器及相关的库文件。
      下面是配置方法:
      首先:从MPICH2官网下载源代码,http://www.mcs.anl.gov/research/projects/mpich2 /downloads/tarballs/1.0.8/mpich2-1.0.8.tar.gz   目前最新的是1.0.8,当然如果你使用的windows平台也可以下载http://www.mcs.anl.gov/research /projects/mpich2/downloads/tarballs/1.0.8/mpich2-1.0.8-win-ia32.msi,以及 http://www.mcs.anl.gov/research/projects/mpich2/documentation/files/mpich2-1.0.8-windevguide.pdf 这是windows平台下的开发文档。
       然后,将mpich2-1.0.8.tar.gz解压你愿意的任何目录,我放在了我的用户目录/home/jack/mpich2-1.0.8中,进入 mpich2-1.0.8目录,运行 ./configure  (虽然安装文档上说源码目录和安装目录最好不要是一个,但我编译没有什么问题,暂时也就不管了), 如果想看安装日志 可以使用sudo ./configure >log  (运行完成后打开LOG文件就行了),如果第一步没有问题,再运行sudo make, 最后运行sudo make install 这就大功造成了。很容易吧,唯一要注意的就是各种开发包一定要安装全。

       接着运行一下测试程序吧.
       C程序用 mpicc编译,C++程序用mpicxx编译
       下面代码是C程序所以用:mpicc -o hello hello.c

启动并行环境 mpdboot
第一次使用这个命令时,可能会出现错误,执行以下代码
cd ~
touch .mpd.conf                   //这是修改mpd配置文件的时间戳
chmod 600 .mpd.conf           //这是修改配置文件的权限
然后运行 mpdboot 即可。

运行程序: mpirun -np 4 ./hello

-np 是指用几个进程模拟运行,这里用4个

 

/*出现如下的错误*/

  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.

 

输入如下可解决:

# mpd &

再次输入如下:

# mpirun -np 4 ./hello
可得如下输出结果:   (下面结果每台机器可能都不一样,是正常的)
Hello World! Process 1 of 4 on jack-laptop
Hello World! Process 3 of 4 on jack-laptop
Hello World! Process 2 of 4 on jack-laptop
Hello World! Process 0 of 4 on jack-laptop
想停止并行运行环境
mpdcleanup

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值