当前位置: 首页 > 工具软件 > LAM/MPI > 使用案例 >

Ubuntu18.04安装mpi及配置记录-20230319

邬弘化
2023-12-01

一、安装过程

使用以下命令进行进行安装

sudo apt-get update
sudo apt-get install openmpi-bin
sudo apt-get install libopenmpi-dev

使用以下命令查看你安装是否正确

mpicc --version

使用以下程序进行测试

#include <mpi.h>
#include <stdio.h>

int main(int argc, char** argv) {
  // Initialize MPI
  MPI_Init(&argc, &argv);

  // Get the rank and size
  int rank, size;
  MPI_Comm_rank(MPI_COMM_WORLD, &rank);
  MPI_Comm_size(MPI_COMM_WORLD, &size);

  // Print a message from each process
  printf("Hello from process %d of %d\n", rank, size);

  // Finalize MPI
  MPI_Finalize();
  
  return 0;
}

保存后,使用以下命令进行编译

mpicc mpi_test.c -o mpi_test

使用以下命令进行执行

mpirun -np 4 ./mpi_test

上述程序会在4个处理器上运行,并在每个处理器上面打印一些信息,可以通过调整mpirun命令的“-np”来调整处理器的个数。

二、打开lamboot运行环境方法

在集群中的每台机器上安装 LAM/MPI。确保在所有机器上安装相同版本的 LAM/MPI。

配置您的网络,以便每台机器都可以与集群中的所有其他机器通信。您可能需要设置防火墙规则、配置网络设置或使用 SSH 等工具连接到每台计算机。

创建一个机器文件,指定集群中将参与 MPI 作业的所有机器的名称或 IP 地址。机器文件应每行列出一台机器,并且不应包含任何注释或空行。例如,如果您有两台 IP 地址为“192.168.1.100”和“192.168.1.101”的机器,您的机器文件可能如下所示:

192.168.1.100
192.168.1.101

将机器文件复制到集群中的每台机器。您可以使用 SCP(安全复制)等工具通过网络复制文件。例如,要将机器文件复制到 IP 地址为“192.168.1.100”的机器上,您可以运行:

scp machines.txt user@192.168.1.100:/path/to/machines.txt

这会将机器文件“machines.txt”复制到 IP 地址为“192.168.1.100”的机器上用户“user”的主目录。

在集群中的一台机器上打开终端或命令提示符。

使用“lamboot”命令在集群中的所有机器上启动 LAM/MPI 运行时环境。“lamboot”命令的语法是:

lamboot [options] <machinefile>

例如,要使用位于每台机器上用户“user”的主目录中的机器文件“machines.txt”启动 LAM/MPI 运行时环境,您可以运行:

lamboot -v -ssi boot rsh -H machines.txt

此命令将使用机器文件“machines.txt”启动 LAM/MPI 运行时环境,并将使用“rsh”命令在每台机器上启动进程。“-v”选项将启用详细输出,“-ssi boot”选项将启用 LAM/MPI 引导协议。

等待“lamboot”命令完成。这将表明 LAM/MPI 运行时环境已在集群中的所有机器上成功启动。

LAM/MPI 运行时环境运行后,您可以使用其他 MPI 命令(例如“mpirun”)启动并行程序并将它们分发到集群中的机器上。

三、参考来源

以上内容来自chatGPT回答。

 类似资料: