Windows下及linux下PVM并行计算平台的搭建
Windows下及linux下PVM并行计算平台的搭建Windows98下PVM的构建: 1、到http://www.csm.ornl.gov/pvm/网站下载PVM 3.4.3 Installshield version for Windows。 2、在安装之前要确保你的机器上已经有C,C++或Fortran编译器,并且若是在WINDOWS下安装,还必须到http:/
Windows98下PVM的构建:
1、到http://www.csm.ornl.gov/pvm/网站下载PVM 3.4.3 Installshield version for Windows。
2、在安装之前要确保你的机器上已经有C,C++或Fortran编译器,并且若是在WINDOWS下安装,还必须到http://www.denicomp.com网站下载用于PVM平台中的各机器间相互通讯的软件rsh及rshd,并将其安装配置好。
3、双击第1步中下载的PVM安装向导进行安装,在安装过程中需要你来指定你的编译器(C、C++、VC++或Fortran),然后安装程序会自动搜索你的编译器的位置,另外还需要指定用于存放临时文件的文件夹,即设定PVM_TMP变量(我设为C:temp,如果此文件夹不存在,就新建此文件夹)。
4、在PVM的安装过程中需要两个非常重要的变量PVM_ROOT(PVM的安装目录)及PVM_ARCH(PVM安装的操作系统,如win32,linux等),这在安装向导中会自动为你设定。
5、安装完成以后,还需要将$PVM_ROOTbin,$PVM_ROOTlib及$PVM_ROOT加入到你的path搜索路径中去。这在win9598下通过修改Autoexec.bat文件来完成。
6、另外还需要设定PVM_RSH变量来指向你的rshd的安装目录。这可以在Autoexec.bat文件中设定,也可以在$PVM_ROOTwin32Pvmvars.bat文件中加入下面一行来实现:
SET PVM_RSH=(rshd的安装目录)
7、这时你会在桌面上看到一个PVM Compile Shell图标,运行时它可能会提示你要在纯DOS下运行,这可以通过点击右键菜单中的属性来弹出属性对话框,在此对话框中的“程序”中的“高级”按钮里不选择MS-DOS方式来解决。
8、在你要安装PVM的每台机器上完成以上六步。
9、在windows下用add命令加入主机时,需要在命令行中加入dx参数,命令的格式:
add “hostname dx=$PVM_ROOTlibwin32pvmd3.exe so=密码”
10、若连接失败,则可以通过运行“rsh remotehost –l login dir | more”,若可以显示远程主机上的当前目录下的内容,则说明连接正常,有可能是PVM的原因;否则就是rsh没有装好或没有设置好。
11、 在终止PVM时没有使用halt命令或由于其他的原因而使得PVM非正常结束的话,则下次起动PVM时,有可能出现PVMD不能起动的错误提示,这时你可以到上面设定的临时文件夹下,如c:temp,检查一下是否存在文件pvmd.*,若有则把其删除。
12、若你想在起动PVM的同时加入你要加入的主机,可以通过建立一hostfile文件来实现。在此文件中,你需要列出你要加入的所有主机名及每台主机上的pvmd的安装目录,每行一个,你所用来第一次起动PVMD的这台主机名也要包括在内。格式如下:
hostname1 dx=$PVM_ROOTlibwin32pvmd3.exe
hostname2 dx=$PVM_ROOTlibwin32pvmd3.exe
…. … ….
这样你就可能运行如下的命令来加入所有的主机(假设所建的hostfile文件位置为c:hostfile.txt):
pvm c:hostfile.txt
Linux下PVM的构建:
1、到http://www.csm.ornl.gov/pvm/网站下载最新版本的PVM,现在最新版本为pvm3.4.4。文件名一般为pvm3.4.4.tar.gz。
2、进入你要安装pvm的目录,一般为/usr/local或用户主目录,用gzip及tar命令对下载的pvm文件进行解包,如:
% gzip –d pvm3.4.4.tar.gz
% tar xvf pvm3.4.4.tar
3、在编译pvm之前,应该设置环境变量PVM_ROOT,使其指向pvm的安装目录(如$HOME/pvm3或/usr/local/pvm3),假设你的当前shell为bash,则用下列命令来设置:
% PVM_ROOT=$HOME/pvm3
% export PVM_ROOT
4、设置PVM_ARCH环境变量,它给出结点机的类型代表着硬件环境与操作的组合,对各种结点机的PVM的安装过程中要注意的问题可参阅$PVM_ROOT/doc/arches。在PVM3中提供了一个shell命令文件$PVM_ROOT/lib/pvmgetarch自动返回它所运行的结点机的类型,你可以调用它来设置PVM_ARCH:
% PVM_ARCH=`${PVM_ROOT}/lib/pvmgetarch`
% export PVM_ARCH
5、以上的命令行方式下对环境变量的设置在注销用户时将会被清除,要想在每次登录时自动进行设置,可以将$PVM_ROOT/lib/bashrc.stub文件的内容拷贝到/etc/.bashrc文件的尾部。
6、编译PVM :
% cd $PVM_ROOT
% make
或
% cd $PVM_ROOT
% make all
这将编译成可执行程序pvmd3、pvmgs及函数库libpvm3.a,libfpvm3.a,libgpvm3.a所生成的文件均存放在目录$PVM_ROOT/LIB/$PVM_ARCH中。如果使用make all命令,除形成PVM的可执行文件和库文件外,还将生成分形图计算实例xep及$PVM_ROOT/example中所有的程序实例。所以实例的可执行文均存放在目录$PVM_ROOT/bin/$PVM_ARCH下。
要注意的是,若你的PVM安装目录是/usr/local,则必须以root帐户登录。
7、PVM中默认的通讯远程登录软件为RSH,你也可以使用SSH(安全性更好一些,并且是以后的趋势),若要使用SSH来代替RSH,你可以选择以下两种方法中的一种:
(1) 修改文件$PVM_ROOT/conf/$PVM_ARCH.def,将其中的ARCHCFLAGS定义中的RSHCOMMAND变量的指向路径改为指向SSH的路径。然后按以上的步骤重新编译PVM。
(2) 设置环境变量PVM_RSH,使其指向你系统中的SSH的路径。这不需要对PVM进行重新编译。为了不在每次登录SHELL时都对此进行设置,你可以在$HOME/.bashrc文件中加入对PVM_RSH的设置,如:
export PVM_RSH=”the path to SSH”
(3) 这时,在每次加入主机时都需要输入你在那台主机上的登录密码;你也可以采用ssh-agent来实现不需要密码就可以登录到其他主机。
8、安装完PVM以后,还需要编辑/ect/hosts文件,来列出你要加入的所有主机名及其对应的IP地址,以便在用add命令来加入主机时,PVM可以根据主机名来寻找相应的IP,从而确定相应的主机。基本格式如下:
hostname1 10.30.13.58(numeric IP)
hostname2 10.30.13.62
… …. ….
每行一个主机。
9、 安装XPVM。在安装XPVM之前要确保你的主机上已经安装了TCL/TK8.0以上的版本(需要注意的是,现行版本的XPVM1.2.5不支持TCL/TK8.3,所以我安装的是TCL/TK8.0),这是安装XPVM所必需的。一般在你的LINUX安装盘中都会有此软件包,你也可以到网站http://www.tcl.tk/software/tcltk/choose.html上的 Download Tcl/Tk 8.0.5去下载,现在的XPVM版本不支持TCL/TK8.3或8.3以上的版本,至于可不可以支持8.1及8.2有待测试。
10 、到 XPVM.src.1.2.5.tgz下载最新版本的XPVM源代码,并解包后进行安装。
11、 到网站 http://www.netlib.no/netlib/linpack/ ,下载PVM性能测试软件Linpack并安装。以用来测试你所建的PVM平台的加速比、通讯延迟等指标。
更多推荐
所有评论(0)