MPI Linux安装运行

1 篇文章 0 订阅
 

1.安装:

下载源码包,mpich2-1.3.2,

依次执行./configure --disable-fortran --disable-f77  --enable-sharedlibs=gcc --enable-shared

make

make install

make clean

这样默认系统/usr/local/bin就有mpicc、mpiexec等命令了。

--enable-sharedlibs=gcc --enable-shared两个选项是生成mpi的动态库,mpicxx.so等。

2.主机ubuntu11.10,子节点fedora15.

1. mpi默然的进程管理工具已经不是mpd,而是hydra,所以不要花力气配置mpd(除非你愿意);
2. ssh设置:主机ssh-keygen -t rsa会在home下生成.ssh文件夹, 子节点机器同样命令,然后把主机ssh文件内东西全部考入子机器ssh内,
运行: ssh 10.1.12.55 检验是否还需要密码进行子节点ssh登录
3.编写运行程序,主机和客户机需要分别编译,如果只是主机编好,拷贝到子机器,会发生子机器no such file 的问题。即使路径什么都对。

一定要分别编译:mpicc -o show_ui show_ui.c 原因应该是linux软链接的问题

4. 集群运行
在主节点的home下配置节点清单hosts,只需要列出机器名,机器名用命令uname -n得到
kekezhou-laptop
kekezhou.fedora:3

机器名后面跟数字是指定节点开的进程个数,没有默认是1, 这样运行的时候就可以不指定-n参数

我在/etc/hosts内还配置了集群的ip和机器名。如下:
10.1.12.53 kekezhou-laptop
10.1.12.55 kekezhou.fedora

最后是运行,在home目录下:mpiexec -f hosts -n 8 ./show_ui
参数说明:hosts是配置的机器名节点清单, 8 是需要的进程个数,最后show_ui是可执行程序

附录:show_ui.c

#include <stdio.h>
#include "mpi.h"
int main(int argc, char* argv[])
{
MPI_Init(&argc, &argv);
system("xclock\n");
MPI_Finalize();
return 0;
} /* end main */ 效果图:

图1.主节点

图2.子节点 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值