4.1. 快速入门:安装Open MPI
尽管本节省略了许多细节,但它提供的示例很可能适用于多种环境。
警告
请注意,本节为“快速入门”——其目的并非详尽无遗,也不涵盖如何在所有支持的环境中构建Open MPI。因此,以下示例在您的实际环境中可能无法完全按所示方式运行。
如有必要,请查阅本章其他部分以获取更多详细信息。
重要
如果您获取的是Open MPI的开发者版本(即通过Git克隆),在尝试构建Open MPI之前,您确实需要阅读开发者指南。真的。
4.1.1. 二进制包
尽管Open MPI社区本身不提供Open MPI的二进制包分发,但许多下游打包者会进行分发。
例如,许多Linux发行版都包含Open MPI软件包——即使它们默认未安装。您应查阅Linux发行版的文档和/或软件包列表,以确认是否可以使用其内置的包管理系统来安装Open MPI。
MacOS的包管理器Homebrew和MacPorts都提供Open MPI的二进制包:
# For Homebrew
shell$ brew install openmpi
# For MacPorts
shell$ port install openmpi
重要
二进制安装包可能包含也可能不包含您平台所需的功能支持(例如特定的网络协议栈)。或者您可用的二进制包可能版本较旧/已过时。因此,从Open MPI官方网站获取源代码压缩包进行构建和安装可能是更好的选择。
4.1.2. 从源代码构建
从Open MPI官方网站下载Open MPI源代码。
警告
请不要从GitHub.com下载Open MPI源代码压缩包。GitHub.com自动生成的压缩包不完整,无法正确构建。它们不是官方的Open MPI发布版本。
Open MPI 使用传统的 configure 脚本配合 make 进行构建。典型的安装方式如下:
shell$ tar xf openmpi-<version>.tar.bz2
shell$ cd openmpi-<version>
shell$ ./configure --prefix=<path> [...options...] 2>&1 | tee config.out
<... lots of output ...>
# Use an integer value of N for parallel builds
shell$ make [-j N] all 2>&1 | tee make.out
# ...lots of output...
# Depending on the <prefix> chosen above, you may need root access
# for the following:
shell$ make install 2>&1 | tee install.out
# ...lots of output...
请注意,完全支持VPATH构建。例如:
shell$ tar xf openmpi-<version>.tar.bz2
shell$ cd openmpi-<version>
shell$ mkdir build
shell$ cd build
shell$ ../configure --prefix=<path> 2>&1 | tee config.out
# ...etc.
上述模式可在多种环境中使用。
请注意,在./configure步骤中有许多可用的配置选项。其中一些可能针对您特定的HPC网络互连类型和/或计算环境是必需的;有关可用选项的描述,请参阅本章其余部分。