gpt4 book ai didi

c++ - 编译运行 OpenMPI 程序

转载 作者:太空狗 更新时间:2023-10-29 21:28:21 24 4
gpt4 key购买 nike

我使用的集群有多种主机类型——不同的 Linux 发行版/版本,一些 32 位,一些 64 位,不同版本的 GCC。我知道我应该使用针对 GCC 的特定于平台的 MPI 包装器来编译我的程序。这一步对我来说或多或少是清楚的。

我的程序使用固定数量的主机,每个主机正好运行 1 个进程。共享内存线程由 TBB 处理,所以基本上我只需要 MPI 来在主机之间分配工作。

最后一步是在所有主机上运行该程序。事实证明,这是我不确定该怎么做的部分,我的 IT 人员也帮不了我。

我有一个主机 IP 地址列表(准确地说是本地地址,例如 192.168.1.xxx)以及每个主机的用户名和密码。在所有主机上运行我的程序的步骤是什么,前提是它是具有平台特定编译器的编译器并复制到每个主机?任何帮助表示赞赏。

最佳答案

您需要无密码 SSH 访问所有机器、一个主机文件、所有机器上的可执行文件。确保可执行文件在所有机器上具有相同的(相对)路径。

主机文件(在主机上):

# my_hostfile 
192.168.0.205
192.168.0.208

Open MPI 命令:

mpirun --hostfile my_hostfile programname

对于无密码 SSH 访问,在 ~/.ssh 下创建一个主 key >

ssh-keygen -t rsa

将主机上 ~/.ssh/rsa.pub 的(一行)内容添加到 ~/.ssh/authorized_keys2 中的新行目标机器。 (您可以使用另一个 SSH 密码系统代替 RSA。)

关于c++ - 编译运行 OpenMPI 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7139311/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com