Linux Centos下安装MPICH以及运行第一个并行程序

本文介绍了如何在Linux CentOS系统中安装MPICH2,并配置其安装目录,解决权限问题,以及如何编译和运行第一个并行程序。详细步骤包括下载MPICH2源码包,通过SSH登录Linux,解压文件,配置安装路径,解决执行权限问题,使用mpicc编译器,最后通过mpirun运行并行程序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一:Linux下安装与配置MPICH

        为了在Linux下运行我们的并行程序,我们需要安装MPICH,现在的版本是MPICH2,下载地址:#迅雷下载分享# mpich2-1.5.tar.gz [下载速度:200.82 KB/s] [文件大小:21.77 MB] 点击下载:  http://convurl.com/GrM1C

         下载完成后,用SSH登录Linux系统,在这里我用的root的登录身份。在/home 下创建一个目录,用来表示某个用户的文件 mkdir  houqingdong  , 将tar.gz(注意,这里是tar.gz后缀的压缩文件,不一样的压缩文件在Linux下解压缩时所用的命令也不一样),还要注意一点,就是解压缩文件的过程一定要在Linux系统下完成,(起初的时候我是在Windows下解压完成的,将解压完成后的文件夹直接上传到Linux下,在安装执行./configure时会出现错误!!)。

          现在我们解压缩文件:tar -zxv -f mpich2-1.5.tar.gz(这里是你自己的压缩文件) ,然后会出现具体的解压缩过程,解压完毕后,在/home 下会出现mpich2-1.5这个文件夹

         进入该文件夹:cd mpich2-1.5  ,进入之后,接下来我们要做的工作就是要配置它的安装目录,在这之前我们先在houqingdong文件夹下创建

### 安装和配置 MPICH2 的方法 在 CentOS安装 MPICH2 可以通过源码编译或者使用包管理器完成。以下是详细的说明: #### 1. 使用 Yum 或 DNF 进行安装 如果系统支持,可以尝试通过 `yum` 或者 `dnf` 来快速安装 MPICH2。 执行以下命令来安装必要的依赖项以及 MPICH 软件包: ```bash sudo yum groupinstall "Development Tools" sudo yum install mpich mpich-devel ``` 这一步会自动下载并安装 MPICH 和其开发库[^2]。 #### 2. 手动编译安装 MPICH2 源码 对于更灵活的控制,可以选择手动编译 MPICH2 源码。具体步骤如下: ##### (a) 下载 MPICH2 源码 访问官方网站或镜像站点获取最新版本的 MPICH2 压缩包。例如: ```bash wget https://www.mpich.org/static/downloads/3.4.1/mpich-3.4.1.tar.gz tar -zxf mpich-3.4.1.tar.gz cd mpich-3.4.1 ``` ##### (b) 配置编译选项 运行 configure 脚本来设置安装路径和其他参数。通常推荐将其安装到 `/opt/mpich2` 中以便于管理和隔离其他软件环境。 ```bash ./configure --prefix=/opt/mpich2 ``` ##### (c) 编译与安装 接着进行实际的编译过程,并将结果部署至指定目录。 ```bash make -j$(nproc) sudo make install ``` 此时应该可以在目标位置找到完整的 MPICH 文件结构,类似于 `/opt/mpich2/bin`, `/opt/mpich2/lib` 等子目录[^3]。 #### 3. 设置环境变量 为了让系统识别新安装的 MPI 工具链,需修改用户的 shell 初始化脚本(如 `.bashrc`),加入相应的 PATH 和 LD_LIBRARY_PATH 定义。 编辑 `~/.bashrc` 文件,追加下面的内容: ```bash export PATH=/opt/mpich2/bin:$PATH export LD_LIBRARY_PATH=/opt/mpich2/lib:$LD_LIBRARY_PATH ``` 使更改生效后验证是否成功加载模块: ```bash source ~/.bashrc which mpiexec mpiexec --version ``` 以上操作完成后即完成了 MPICH2 在 CentOS 平台上的基本搭建工作[^1]。 #### 测试简单程序 编写一个测试用例检验功能正常与否。比如创建名为 hello.c 的 C 文件包含如下代码片段: ```c #include <mpi.h> #include <stdio.h> int main(int argc, char *argv[]) { int rank; MPI_Init(&argc, &argv); MPI_Comm_rank(MPI_COMM_WORLD, &rank); printf("Hello from process %d\n", rank); MPI_Finalize(); return 0; } ``` 保存退出后再依据上述设定好的工具链对其进行构建链接最后提交作业查看输出效果即可确认整个流程无误。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值