MacOS中配置Open MPI

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MacOS中配置Open MPI相关的知识,希望对你有一定的参考价值。

参考技术A 家中有两台电脑,一台是MacBook Pro,一台MacMini,使用SSH+Open MPI的方式将两台电脑相连,使用MPI APIs并行计算。

首先需要配置两台电脑的ssh,我使用了一个偷懒的方法,每台电脑安装一个Server.app,直接开启SSH登录即可。直接将Server.app安装后,选择这台电脑登录Server,然后在设置中的远程访问中选安全shell连接(SSH)即可。

因为在家中用无线路由上网,就将这两台电脑的IP设为固定IP。

这个在之前的文章中也提到过关于免密码登录,执行以下命令

在两台电脑上都执行以上的语句。

我们直接从软件包安装。当然也可以从brew安装,但是现在是2.1.2版本,还没有升级到3.0.0。

整个过程在我的电脑中运行了半个小时以上。

安装完成之后,我们需要配置环境变量。两台电脑使用SSH互相交互信息,但是并没有出现登录窗口,这种登录方式为non-interactive + non-login shell,即非交互非登录的shell。在登录时读取的环境变量文件是~/.bashrc。如果有兴趣可以参考feihu的 文章 。

编辑~/.bashrc文件并写入如下信息

然后我们需要编辑计算机列表建立文件~/hosts,输入每台电脑的IP地址,并指定每台电脑的slots数

进入Open MPI的examples目录进行编译

运行命令如下:

如果现实Hello, world信息表明安装成功。

欢迎访问我的博客: http://www.histosci.xyz
参考:

如何使用 Visual Studio 2010 在 Windows 上使用 Open MPI 构建 boost::mpi 库

【中文标题】如何使用 Visual Studio 2010 在 Windows 上使用 Open MPI 构建 boost::mpi 库【英文标题】:How to build boost::mpi library with Open MPI on Windows with Visual Studio 2010 【发布时间】:2012-03-12 02:32:09 【问题描述】:

我安装了 Open MPI 1.5.4(64 位),我正在尝试使用 bjam 重建 boost 库(1.48)。

我更改了 user-config.jam 文件,添加了带有显式编译器路径的 using mpi 行(尽管 mpic++ 已经在 PATH 环境变量中):

using mpi : "C:/Program Files (x86)/OpenMPI_v1.5.4-x64/bin/mpic++.exe" ;

然后我尝试从命令提示符运行以下命令:

bjam toolset=msvc --build-type=complete --with-mpi --address-model=64 stage

不幸的是,构建过程仍然需要更多提示。部分错误报告如下所示:

MPI auto-detection failed: unknown wrapper compiler C:/Program Files (x86)/OpenMPI_v1.5.4-x64/bin/mpic++.exe

有没有人设法在 Windows 下使用 Open MPI 编译 Boost MPI?我错过了什么吗?

【问题讨论】:

我怀疑这与您遇到的问题有关,但应该是 toolset=msvc sans --;其余的看起来是正确的。您是否尝试过在 user-config.jam 中使用短路径名? 我也尝试过短路径名。你对工具集参数是正确的,但它没有区别。我会更正命令行 尝试将--debug-configuration 传递给bjam;这应该会给出关于编译器包装器检测失败的原因的更详细的输出。 我也试过了。从那里没有任何提示。我现在正在“调试”mpi.jam。在为 Windows 运行时,我已经发现了一些问题。仍在寻找解决方案...并发现有关类似情况的帖子:lists.boost.org/boost-build/2010/11/24369.php 【参考方案1】:

可能对我有用...我使用 Microsoft MPI 而不是 OpenMPI。

    安装Microsoft MPI 编辑project-config.jam并添加using mpi ; 编辑tools\build\v2\map.jam并找到Microsoft Computer Cluster并将路径更改为C:\Program Files\Microsoft MPIC:\Program Files\Microsoft MPI中的Inc文件夹重命名为Include 运行bjam --with-mpi

给我链接错误,但我发布的是我得到的......

【讨论】:

请参考这篇文章,我有一个工作版本。 ***.com/questions/9433311/…【参考方案2】:

我在较旧的blog 中找到了解决方案:

什么对我有用(仅使用 OpenMPI 测试):

    将 c:\OpenMPI_v1.6.2-win32\bin\ 添加到路径变量中 在 BOOST_ROOT\tools\build\v2\user-config.jam 内:使用 msvc ;使用 mpi ; 在 mpi.jam 中,我更改了本地 cluster_pack_path_native = "C:\Program Files\Microsoft Compute Cluster Pack" ;到本地 cluster_pack_path_native = "c:\OpenMPI_v1.6.2-win32" ; 运行 bjam --with-mpi

【讨论】:

以上是关于MacOS中配置Open MPI的主要内容,如果未能解决你的问题,请参考以下文章

MPI 本地局域网运行多机配置,同时运行多个程序;

MPI 本地局域网运行多机配置,同时运行多个程序;

MPI集群配置

如何用 MPI_File_open 替换 MPI 中的现有文件

windows怎么配置安装mpi

Intel MPI 5.1.3安装配置详解