在CentOS上安装MPI以及MPI入门编程笔记
一、准备工作
更新yum库yum update
下载相关依赖包
yum install wget -y
yum install gcc gcc-c++ gcc-fortran kernel-devel -y
二、下载并安装mpi安装包
官网下载MPI 安装包(http://www.mpich.org/downloads/ )1、新建下载目录
mkdir /mpich-install
2、解压
tar -zxvf mpich-4.0.2.tar.gz
3、进入目录并编译安装
cd mpich-4.0.2/
./configure --prefix=/mpich-install --with-device=ch4:ofi 2>&1 | tee c.txt
------------ps:下边两步要运行很久,可以泡杯咖啡休息等待哦-----------
make
make install
三、配置环境
1、编辑环境变量vim ~/.bashrc
在最底层添加:
export MPICH=/mpich-install
export PATH=$MPICH/bin:$PATH
令环境变量生效
source ~/.bashrc
2、检查安装情况
mpirun -versions
四、MPI入门编程笔记
1、第一个MPI编程小程序vim hw.c
#include2、在同一台机器上编译运行#include "mpi.h" int main(int argc, char **argv) { int myrank,nprocs,len; MPI_Status status; //状态 char Processorname[20]; MPI_Init(&argc,&argv); //初始化MPI并行环境 MPI_Comm_size(MPI_COMM_WORLD, &nprocs); //nprocs返回进程个数 MPI_Comm_rank(MPI_COMM_WORLD,&myrank); //myrank返回进程号(从0开始) MPI_Get_processor_name(Processorname, &len); //返回机器名字和名字长度 printf("Hello world! Process %d of %d on %s.\n",myrank,nprocs,Processorname);
MPI_Finalize(); //终止MPI处理 }
方法一:
编译(会生成一个a.out文件) mpicc hw.c 运行 ./a.out方法二:
编译(会生成一个hw可运行文件) mpicc -o hw hw.c 运行 mpirun ./hw也可以指定进程数运行
mpirun -np 4 ./hw
3、在同一台机器上编译运行
首先要保证hw.c是在共享目录下("相同目录"不会的翻看我之前的NFS文件挂载)
正常编译即可
mpirun -np 8 -hosts david,client1,client2 ./hw在三台机器上的运行结果: