目录
一、OpenMPI的安装与使用
1.1 OpenMPI简介
1.2 编译安装
二、Mvapich2的安装与使用
2.1 Mvapich2简介
2.2 编译安装
三、IntelMPI的安装与使用
3.1 intelmpi简介
3.2 编译安装与使用
一、OpenMPI的安装与使用
1.1 OpenMPI简介
OpenMPI项目是一个开源消息传递接口实现,由科研机构和行业合作伙伴联合开发和维护。因此,OpenMPI能够结合科学计算社区的专业知识、技术和资源,用以构建可用的最佳MPI库。
官网地址:https://www-lb.open-mpi.org
OpenMPI已实现或正在开发中的功能和特性包括:
完全符合MPI-3.1标准 线程安全性和并发性 动态进程生成 网络和进程容错 异构网络支持 单个库支持所有网络 运行时检测
多作业调度系统支持 多操作系统支持 多平台支持 高便捷性与可维护性 完整的API文档 主动响应邮件列表 基于BSD许可证的开源许可证
1.2 编译安装
tar xvf openmpi-X.X.X.tar.gz && cd openmpi-X.X.X
./configure --prefix=安装路径 CC=xxx CXX=xxx
make -j N
make install
#GNU编译器 CC=gcc CXX=g++
#Intel编译器 CC=icc CXX=icpc
#OpenMPI支持并行编译
#N为编译使用的进程数
自定义环境变量Modulefile文件
#%Module1.0
setenv OMPI_HOME 安装路径
prepend-path PATH ${OMPI_HOME}/bin
prepend-path LIBRARY_PATH ${OMPI_HOME}/lib
prepend-path LD_LIBRARY_PATH ${OMPI_HOME}/lib
prepend-path INCLUDE ${OMPI_HOME}/include
prepend-path PKG_CONFIG_PATH ${OMPI_HOME}/lib/pkgconfig
prepend-path MANPATH ${OMPI_HOME}/share/man
常用命令
命令解释
mpicc
OpenMPI C编译器
mpicxx
mpic++
OpenMPI C++编译器
mpif77
mpif90
OpenMPI Fortran编译器
mpirun
mpiexec
OpenMPI运行命令
$ mpirun -np 4 -hostfile hostfile program
-np X: 运行X个进程
--hostfile: 指定计算节点列表
hostfile形式一:每行一个结点
node1
node1
node2
node2
hostfile形式二:指定重复次数
node1 slots=2
node2 slots=2
节点内使用共享内存,节点间使用InfiniBand通信
$ mpirun -np 12 -hostfile hosts --mca btl self,sm,openib ./program
常用选项
含义
--mca orte_rsh_agent ssh
指定节点间通信