Ubuntu mpi集群搭建
时间: 2025-05-05 20:30:37 浏览: 23
### 如何在 Ubuntu 上搭建 MPI 集群
#### 准备工作
对于集群中的每台机器,建议通过虚拟机复制方式快速部署相同配置的操作环境,这能节省大量时间并减少错误发生概率[^1]。
#### 安装必要的软件包
确保所有节点上的操作系统是最新的,并且安装了所需的开发工具和库。可以通过以下命令完成基本的更新与安装操作:
```bash
sudo apt update && sudo apt upgrade -y
sudo apt install build-essential libopenmpi-dev openmpi-bin openssh-server nfs-kernel-server nfs-common -y
```
#### 设置无密码 SSH 登录
为了让各个节点之间能够顺利通信,在主节点上生成SSH密钥对并向其他节点分发公钥,从而实现免交互登录功能。
#### 编译安装 PMIx 库 (针对 Slurm 使用场景)
当计划利用 Slurm 调度器管理作业时,则需事先编译好 PMIx 库以便后续支持 srun 启动 MPI 程序[^2]。
#### 测试 MPI 运行状况
编写简单的测试程序验证集群是否正常运作。下面是一个典型的 C++ 版本 Hello World 实例:
```cpp
#include <mpi.h>
#include <iostream>
int main(int argc, char *argv[]) {
int rank;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
std::cout << "Hello world from process " << rank << "\n";
MPI_Finalize();
}
```
保存上述代码至文件 `hello_mpi.cpp` 并执行如下指令进行编译运行:
```bash
mpicxx hello_mpi.cpp -o hello_mpi.out
mpirun --hostfile hosts.txt ./hello_mpi.out
```
其中 `hosts.txt` 文件应包含参与计算的所有主机名列表。
#### 自动化挂载远程存储空间(可选)
为了方便数据交换以及资源共享,可以在 `/etc/fstab` 中加入相应条目使得每次开机都能自动连接到指定位置下的网络磁盘资源[^3]。
阅读全文
相关推荐

















