17.1.4. ompi_info

ompi_info — 显示关于Open MPI安装的信息

17.1.4.1. 概述

ompi_info [options]

17.1.4.2. 描述

ompi_info 提供了关于Open MPI安装的详细信息。它在至少三种常见场景下非常有用:

  1. 检查本地配置并查看Open MPI的安装情况。

  2. 向Open MPI社区提交错误报告/帮助请求(参见获取帮助)。

  3. 查看已安装的Open MPI插件列表并查询它们支持的MCA参数。

注意

ompi_info 默认情况下仅显示少量MCA参数(即级别1参数)。使用 --level 选项可显示更多选项(详见 LEVELS 章节获取更多信息)。

17.1.4.3. 选项

ompi_info 接受以下选项:

  • -a, --all: 显示所有配置选项和MCA参数。同时会将默认MCA参数级别改为9,除非同时指定了--level参数。

  • --arch: 显示编译Open MPI时所使用的架构。

  • -c, --config: 显示配置选项

  • -gmca, --gmca : 传递适用于所有上下文的全局MCA参数。

  • -h, --help: 显示帮助/使用信息。

  • --hostname: 显示配置和构建Open MPI所在的主机名

  • --internal: 显示内部MCA参数(这些参数不建议用户修改)。

  • --level : 仅显示不超过此级别(1-9)的变量。默认值为1,除非在未指定--level的情况下使用了--all,此时默认值为9。更多信息请参阅LEVELS章节。

  • -mca, --mca : 传递特定上下文的MCA参数;如果未使用--gmca且仅指定了一个上下文,则这些参数将被视为全局参数。

  • --param : 显示MCA参数。第一个参数是要显示的组件类型;第二个参数是要显示的具体组件(或关键字all,表示"显示此类型的所有组件")。

  • -t, --type: 显示参数中指定类型的MCA参数。可接受以下参数:unsigned_int, unsigned_long, unsigned_long_long, size_t, string, version_string, bool, double。默认级别为1,除非通过--level指定。

  • --parsable: 当与其他参数结合使用时,输出会以机器可解析的格式显示。--parseable--parsable的同义词。

  • --path : 显示Open MPI的配置路径。接受以下参数:prefix, bindir, libdir, incdir, pkglibdir, sysconfdir

  • --pretty: 当与其他参数一起使用时,输出将以"美观打印"格式显示(默认)

  • --selected-only: 仅显示选定组件中的变量。

  • -V, --version: 显示Open MPI的版本信息。

17.1.4.4. 级别

Open MPI拥有大量可调运行时参数(称为“MCA参数”),但通常对特定用户而言只有少数几个参数是实用的。

因此,Open MPI将这些参数划分为九个不同的层级,分为三大类别,每个类别下又包含三个子类别。

请注意,由于每个MCA参数都可以通过MPI_T控制变量API(在MPI-3.0中引入)访问,这些级别完全对应MPI_T cvar的九个级别。

这三个类别是:

  1. 终端用户: 通常来说,这些参数是保证正确性所必需的,意味着用户可能需要设置这些参数才能使其MPI应用程序正确运行。例如,BTL if_includeif_exclude 参数就属于这一类别。

  2. 应用调优参数: 通常来说,这些参数可用于调整MPI应用程序性能。甚至包括控制资源耗尽级别的参数(例如空闲列表条目数量、缓冲区大小等),如果设置过低,可能被视为"正确性"参数。但实际上,它们都属于调优参数。

  3. Open MPI开发者: 此类别中的参数要么不适用于其他两类,要么专门用于Open MPI本身的调试/开发。

在每个类别中,又包含三个子类别:

  1. 基础: 这个子类别包含该类别中所有人都需要查看的参数 - 包括初级终端用户、应用程序调优人员以及新加入的OMPI开发者。

  2. 详细参数: 该子类别包含通常有用但用户可能不需要频繁修改的参数。

  3. 全部: 此子类别包含所有其他参数。这类参数通常较为深奥难懂。

结合类别和子类别,以下是Open MPI定义的九个级别:

  1. 终端用户感兴趣的基本信息。

  2. 终端用户感兴趣的详细信息。

  3. 最终用户感兴趣的所有剩余信息。

  4. 应用调谐器所需的基本信息。

  5. 应用调优工具所需的详细信息。

  6. 应用程序调优器所需的所有剩余信息。

  7. Open MPI 实现者的基本信息。

  8. 为Open MPI开发者提供的详细信息。

  9. Open MPI 实现者所需的所有剩余信息。

默认情况下,ompi_info仅显示1级MCA参数。如需查看更多MCA参数,请使用--level命令行选项。

17.1.4.5. 示例

以人类可读/美观打印格式显示选项的默认输出和已安装组件的列表:

ompi_info

以机器可解析的格式显示选项的默认输出和已安装组件的列表:

ompi_info --parsable

以人类可读/美观打印格式显示“tcp” BTL组件的1级MCA参数:

ompi_info --param btl tcp

以人类可读/美观打印格式显示“tcp”BTL组件的1级至6级MCA参数:

ompi_info --param btl tcp --level 6

以机器可解析的格式显示“tcp” BTL组件的1级MCA参数:

ompi_info --param btl tcp --parsable

以人类可读/美观打印格式显示字符串类型的1级至3级MCA参数:

ompi_info --type string --pretty-print --level 3

显示Open MPI配置时使用的“bindir”:

ompi_info --path bindir

以美观的格式显示Open MPI的版本号:

ompi_info --version

显示关于Open MPI安装的所有信息,包括可找到的所有组件、它们支持的所有MCA参数(即1到9级)、Open MPI及各组件的版本等:

ompi_info --all