Ubuntu 21.04にOpen MPIをインストール方法を解説します。
Ubuntu 20.04 LTSの場合は、次の記事をご覧ください。
本記事の内容
- OS標準のOpen MPI
- Open MPIのインストール
- Open MPIの動作確認
それでは、上記に沿って解説していきます。
OS標準のOpen MPI
Ubuntuには、OS標準のパッケージが存在しています。
Apacheのような人気ソフトウェアであれば、ほぼ確実にOS標準が存在します。
Open MPIに関しても、OS標準のパッケージが存在しています。
では、Ubuntu 21.04におけるOS標準のOpenMPIを確認してみましょう。
$ sudo apt info openmpi-bin Package: openmpi-bin Version: 4.1.0-7ubuntu2 Priority: optional Section: universe/net Source: openmpi Origin: Ubuntu Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> Original-Maintainer: Alastair McKinstry <mckinstry@debian.org> Bugs: https://bugs.launchpad.net/ubuntu/+filebug Installed-Size: 557 kB Depends: libc6 (>= 2.8), libevent-core-2.1-7 (>= 2.1.8-stable), libopenmpi3 (>= 4.1.0), openmpi-common (>= 4.1.0-7ubuntu2), openssh-client | ssh-client Suggests: gfortran | fortran-compiler Conflicts: openmpi-bin Breaks: lam4-dev (<< 7.1.4-4), libmpich-dev (<< 3.3~b1-5), libopenmpi-dev (<< 4.0.5-3), mpich (<< 3.3~b1-5) Replaces: libopenmpi-dev (<< 4.0.5-3) Homepage: https://www.open-mpi.org/ Download-Size: 111 kB APT-Sources: http://archive.ubuntu.com/ubuntu hirsute/universe amd64 Packages Description: high performance message passing library -- binaries Open MPI is a project combining technologies and resources from several other projects (FT-MPI, LA-MPI, LAM/MPI, and PACX-MPI) in order to build the best MPI library available. A completely new MPI-3.1 compliant implementation, Open MPI offers advantages for system and software vendors, application developers and computer science researchers. . Features: * Full MPI-3.1 standards conformance * Thread safety and concurrency * Dynamic process spawning * High performance on all platforms * Reliable and fast job management * Network and process fault tolerance * Support network heterogeneity * Single library supports all networks * Run-time instrumentation * Many job schedulers supported * Internationalized error messages * Component-based design, documented APIs . This package contains the Open MPI utility programs.
Open MPI 4.1.0は、2020年12月にリリースされています。
そして、最新バージョンの4.1.1は2021年4月のリリースとなります。
4.0系は、4.1系の一つ前のシリーズです。
それであれば、Open MPI 4.1.0はほぼ最新と言えます。
そのため、aptでOpen MPI 4.1.0をインストールしましょう。
なお、OS標準のソフトウェアのバージョンは、それぞれのOS毎に異なります。
その対応関係は、以下となります。
Ubuntu | Open MPI |
18.04 LTS | 2.1.1 |
20.04 LTS | 4.0.3 |
20.10 | 4.0.3 |
21.04 | 4.1.0 |
以上、OS標準のOpen MPIについての説明でした。
次は、Open MPIのインストールを行います。
Open MPIのインストール
まずは、パッケージリストの更新です。
次のコマンドは、インストール前には呪文のように唱えましょう。
$ sudo apt-get update
では、OS標準のOpen MPIをインストールします。
$ sudo apt-get -y install openmpi-bin
インストールは、1分程度で終わります。
今回はOS標準のパッケージのインストールです
そのため、エラーはあまり考えられません。
ただし、普段からパッケージ管理システムのaptでインストールをしていればの話ですけどね。
以上、Open MPIのインストールの説明でした。
最後に、Open MPIの動作確認を行います。
Open MPIの動作確認
「mpiexec」コマンドが動くことを確認すれば、十分です。
$ mpiexec --version mpiexec (OpenRTE) 4.1.0 Report bugs to http://www.open-mpi.org/community/help/
上記コマンドは、バージョンの確認を行います。
バージョンとともに、バグレポートの報告先が記載されています。
「mpiexec」コマンドの使い方は、以下。
$ mpiexec --help mpiexec (OpenRTE) 4.1.0 Usage: mpiexec [OPTION]... [PROGRAM]... Start the given program using Open RTE -c|-np|--np <arg0> Number of processes to run -gmca|--gmca <arg0> <arg1> Pass global MCA parameters that are applicable to all contexts (arg0 is the parameter name; arg1 is the parameter value) -h|--help <arg0> This help message -mca|--mca <arg0> <arg1> Pass context-specific MCA parameters; they are considered global if --gmca is not used and only one context is specified (arg0 is the parameter name; arg1 is the parameter value) -n|--n <arg0> Number of processes to run -q|--quiet Suppress helpful messages -v|--verbose Be verbose -V|--version Print version and exit For additional mpirun arguments, run 'mpirun --help <category>' The following categories exist: general (Defaults to this option), debug, output, input, mapping, ranking, binding, devel (arguments useful to OMPI Developers), compatibility (arguments supported for backwards compatibility), launch (arguments to modify launch options), and dvm (Distributed Virtual Machine arguments). Report bugs to http://www.open-mpi.org/community/help/
とりあえず、Open MPIの動作確認はできました。
ただし、実際に機能しているかどうかの確認は若干複雑です。
コマンドだけでも検証は可能です。
ただ、次のようなライブラリを用いた方がわかりやすいでしょう。
以上、Open MPIの動作確認を説明しました。