MPI并行环境搭建及集群测试_第1页
MPI并行环境搭建及集群测试_第2页
MPI并行环境搭建及集群测试_第3页
MPI并行环境搭建及集群测试_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、MPI并行计算环境搭建以及集群测试  MPI作为一种通过消息传递进行并行计算的框架,在很多科学计算上有很重要的应用,这次因为GraphLab环境搭建时的需要,花了三个来小时的时间进行了初步的搭建摸索,感觉很有意思!首先是单机MPI安装1.安装之前因为是集群测试,所以跟hadoop一样先要设置ssh无密钥登录(可以参考这里),我这里用的是一个服务器节点和一台虚拟机。上面给出的链接里对ssh无密钥登录设置说的很清楚。2.开始安装源码下载地址,这里我用的是1.0.8(mpich命名很怪气,明明是v2,它却命名是1,无力吐槽)mpich2-1.0.8.tar.gz单机安装很简单#t

2、ar -zxvf mpich2-1.0.8.tar.gz#./configure (我让它默认安装到/usr/local/bin下,不需要设置安装路径)#make#make install注意:对于集群的每一个机器都要安装,当然你如果用NFS挂载也可以,我没这样用。安装完成之后最重要的一步有人说是设置环境变量,其实你默认安装路径的话,这个变量设置与否无所谓的。因此最重要的一步是创建配置文件(mpd.conf)。#touch /etc/mpd.conf#chmod 600 /etc/mpd.conf#echo secretword=myword >> /etc/mpd.conf到此为

3、止,单机安装就算完成了,可以进行单机测试# mpd &1 4457# mpdtracevm4# mpdallexit3.集群部署集群部署就多一步,只需要在主机种创建集合文件(mpd.hosts),文件地方无所谓,内容为集群的hostname列表。node9 #主服务器vm4 #子节点在主机中测试部署是否成功:# mpdboot -n 2 -f /root/mpd.hosts # mpdtracenode9vm4说明部署成功。4.样例测试icpi是已经经过编译的可执行文件,用于计算pi的值。(注意这里服务器和子节点中icpi放的地方要相同)单机:# ./icpi Enter the nu

4、mber of intervals: (0 quits) 10000000000pi is approximately 3.1415926535895782, Error is 0.0000000000002149wall clock time = 45.378959Enter the number of intervals: (0 quits) 1000pi is approximately 3.1415927369231227, Error is 0.0000000833333296wall clock time = 0.000149集群:rootnode9 wyztest# mpiexe

5、c -n 2 ./icpi Enter the number of intervals: (0 quits) 10000000000pi is approximately 3.1415926535895737, Error is 0.0000000000002194wall clock time = 22.696655Enter the number of intervals: (0 quits) 0Enter the number of intervals: (0 quits) 1000pi is approximately 3.1415927369231254, Error is 0.00

6、00000833333322wall clock time = 0.001589测试结果表明:对于间隔比较大时,明显集群快,但是间隔很小时,由于消息传递机制本身会耗时,因此集群效率不如单机。部分参考资料链接:补充:(可能会出现的问题,这是我在再次部署的时候出现的问题,第一次部署的时候太顺利了,因此没有出现问题,第二次再部署的时候出现了如下四个问题。)问题1/usr/local/bin/mpdlib.py:8: DeprecationWarning: The popen2 module is deprecated. Use the subprocess module.import sys, os

7、, signal, popen2, socket, select, inspect/usr/local/bin/mpdlib.py:15: DeprecationWarning: the md5 module is deprecated; use hashlib insteadfrom md5 import new as md5new原因:python版本太高了,python2.6开始都不支持popen2模块,转而用subprocess模块代替,因此会出现这个错误。解决办法是降低python的版本,转到python2.5之后就可以了。(源码下载)问题2#ssh node2ssh: node2:

8、 Temporary failure in name resolution#ssh 192.168.169.2 则成功原因:/etc/hosts中配置不完全解决办法:两端都需要配置如下:192.168.168.9 node9192.168.169.2 node2问题3rootnode9 source# mpdboot -n 2 -f /root/mpd.hosts mpdboot_node9 (handle_mpd_output 401): failed to connect to mpd on node2原因:防火墙的问题,node2中防火墙禁止node9进行mpd连接解决办法:我直接将node2中端口关掉了rootnode2 .ssh# iptables -Frootnode2 .ssh# iptables -LChain INPUT (policy ACCEPT)target prot opt source destination Chain FORWARD (policy ACCEPT)target prot opt source destination Chain OUTPUT (policy ACCEPT)target prot opt source destination 或者你可以参考这里,这个连接的第二个问题就是教你如何解

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论