mpi_info 的输出中的术语 OpenMPI 和 MPI API 之间的区别

Difference between the terms OpenMPI and MPI API from output of mpi_info

当我在我的终端上输入 ompi_info 时,我在我的终端缓冲区上得到了一个巨大的输出,其中一部分看起来像:

Package: Open MPI buildd@lgw01-57 Distribution
Open MPI: 1.10.2
Open MPI repo revision: v1.10.1-145-g799148f
Open MPI release date: Jan 21, 2016
Open RTE: 1.10.2
Open RTE repo revision: v1.10.1-145-g799148f
Open RTE release date: Jan 21, 2016
OPAL: 1.10.2
OPAL repo revision: v1.10.1-145-g799148f
OPAL release date: Jan 21, 2016
MPI API: 3.0.0
Ident string: 1.10.2
Prefix: /usr
Configured architecture: x86_64-pc-linux-gnu
Configure host: lgw01-57
Configured by: buildd

忽略 发布日期 的信息,我特别好奇第二行的含义: Open MPI : 1.10.2 和第十二行: MPI API : 3.0.0 。这是否意味着 Open MPI 版本 3.0.0 的新功能可在 MPI 版本 1.10.2 上使用?

Open MPI is an implementation (e.g. code) of the MPI Standard(例如 pdf 文档)。

这是两个截然不同的东西,有自己独立的版本。

回答我自己的问题,似乎是的,OpenMPI 1.10 的稳定版本支持 MPI 3 中引入的大部分新功能。 This page of OpenMPI-1.10.1 显示所有可用的 MPI API 的列表,其中包括用于单向通信的 API,这是在 MPI 2.0 版中引入的,以及 MPI 3.0 的功能,如非阻塞集体MPI_Ibcast 等操作和 MPI_MprobeMPI_Mrecv.

等匹配探测

尽管此列表也不包含 MPI_T 工具界面和 current stable release of openMPI-3.0 中提供的许多其他功能。