|
|
前几天一个同学问我关于MPI的问题,想起很多人可能在做集群运算初期这方面有问题不知道怎么去找,于是将我几年前写的一个总结拿出来放在这里吧,需要在集群系统上做并行运算的人应该能用得到这个。目前我在集群系统上开发已经近两年多了,一直用lam-mpi,还算比较好用。
----
LAM/MPI安装说明:
LAM/MPI可以从http://www.lam-mpi.org网站上 ... lam-7.0-1.i586.rpm 运行平台为Redhat Linux 9.0。
安装按以下步骤:
- 先安装lam rpm -Uvh lam-7.0-1.i586.rpm
- 设置/etc/lam/lam-bhosts.def文件,里面写上需要运行MPI程序的机器名字,也可以是IP, 如果是机器名,则必须在/etc/hosts下存在IP解释。这个地方定义的机器是运行lamboot 时启动的机器。如果不改写这个文件,可以在运行lamboot的时候加一参数,如 lamboot hostfile,则用hostfile内定义的host,而不是用/etc/lam/lam-bhosts.def文件。
- 在不同的机器下设置一个相同名字的账号,UID和GID也要相同
- 每台机器下安装rsh,rlogin服务,并在开机时启动。在要运行MPI程序的机器的用户$HOME 目录下添加一个.rhosts文件,并把其权限改为600,里面写上每一台机器的名字。这个文件里的机器是哪台机器可以启动本机的lamd服务。
- 测试rsh hostname ls看是否每一台机子都可以远程运行程序。如果不能通过测试再查找原 因。
- 运行lamboot,便可以正常运行MPI程序了。
lam会安装一个算PI的例子程序,很容易看懂的,cpi.c,拿出来mpicc cpi.c编译一下试试。现在机器的性能都比较猛,可以装两个虚拟机来试验一些集群并行运算的东西倒也是一个好办法。 |
|