---
title: Hyper MPI 1.2.*及以下版本命令参数
description: "Hyper MPI在支持1.3.*版本命令参数的基础上兼容1.2.*及以下版本的命令参数。本文介绍Hyper MPI 1.2.*及以下版本的命令参数，1.2.*及以下版本的命令参数与1.3.*版本命令参数之间的生效规则和转换关系。"
url: https://www.hikunpeng.com/document/detail/zh/kunpenghpcs/hpckit/devg/userg_huaweimpi_0078.html
sourcePath: /source/zh/kunpenghpcs/hpckit/devg/userg_huaweimpi_0078.html
indexId: 5021af312e935faca851a17913ed1c16105bc5b8d70aa27da6db1770389fc44a60
---
# Hyper MPI 1.2.*及以下版本命令参数

Hyper MPI在支持1.3.*版本命令参数的基础上兼容1.2.*及以下版本的命令参数。本文介绍Hyper MPI 1.2.*及以下版本的命令参数，1.2.*及以下版本的命令参数与1.3.*版本命令参数之间的生效规则和转换关系。

#### 生效规则

- 如果不对任何版本的命令参数进行手动赋值，则生效值为1.3.*版本命令参数的默认值。
- 如果手动为Hyper MPI命令参数赋值，生效规则如  表1
所示。
**表1 生效规则**

| 1.3.\*版本命令参数 | 1.3.\*版本命令参数 | 1.2.\*及以下版本命令参数 | 1.2.\*及以下版本命令参数 | 生效值 |
| --- | --- | --- | --- | --- |
| 合法 | 不合法 | 合法 | 不合法 | 生效值 |
| √ | \- | √ | \- | 1.3.\*版本命令参数的值 |
| √ | \- | \- | √ | 1.3.\*版本命令参数的值 |
| \- | √ | √ | \- | 1.2.\*及以下版本命令参数的值 |
| \- | √ | \- | √ | 1.3.\*版本命令参数的默认值 |
| √ | \- | \- | \- | 1.3.\*版本命令参数的值 |
| \- | √ | \- | \- | 1.3.\*版本命令参数的默认值 |
| \- | \- | √ | \- | 1.2.\*及以下版本命令参数的值 |
| \- | \- | \- | √ | 1.3.\*版本命令参数的默认值 |


- 如果手动为Hyper MPI命令参数赋值，生效规则如下：

  - 同时为1.3.*版本命令参数和1.2.*及以下版本命令参数赋值，且值均合法，则生效值为1.3.*版本命令参数的值。
  - 同时为1.3.*版本命令参数和1.2.*及以下版本命令参数赋值，但1.2.*及以下版本命令参数的值不合法，则生效值为1.3.*版本命令参数的值。
  - 同时为1.3.*版本命令参数和1.2.*及以下版本命令参数赋值，但1.3.*版本命令参数的值不合法，则生效值为1.2.*及以下版本命令参数的值。
  - 同时为1.3.*版本命令参数和1.2.*及以下版本命令参数赋值，且值均不合法，则生效值为1.3.*版本命令参数的默认值。
  - 仅为1.3.*版本命令参数赋值，且值合法，则生效值为1.3.*版本命令参数的值。
  - 仅为1.3.*版本命令参数赋值，但值不合法，则生效值为1.3.*版本命令参数的默认值。
  - 仅为1.2.*及以下版本命令参数赋值，且值合法，则生效值为1.2.*及以下版本命令参数的值。
  - 仅为1.2.*及以下版本命令参数赋值，但值不合法，则生效值为1.3.*版本命令参数的默认值。


#### 使用建议

- 较Hyper MPI 1.2.*版本命令参数，Hyper MPI 1.3.*版本的命令参数可以提供更全面、更优的性能，建议使用Hyper MPI 1.3.*版本的命令参数。
- 使用Hyper MPI命令参数指定算法时，可以参考  算法地图
了解具体参数值的含义。


#### 命令参数及转换关系


**表2 1.2.*及以下版本命令参数及其与1.3.*版本命令参数之间转换关系**

| Hyper MPI 1.2.\*及以下版本命令参数 | Hyper MPI 1.3.\*版本命令参数 | 取值 | 参数说明 |
| --- | --- | --- | --- |
| \-x UCX\_BUILTIN\_DEGREE\_INTER\_FANOUT= | \-x UCG\_PLANC\_UCX\_ALLREDUCE\_FANOUT\_INTER\_DEGREE= | 取值类型：int 取值范围：任意正整数 说明： 建议配置为2~运行作业节点数量间的正整数。 默认值：8 | 可选参数，表示算法使用的节点间K项树的扇出值。具体算法如下： Allreduce算法的算法序号为7和8时的参数。 Barrier算法的算法序号为6和7时的参数。 Bcast算法的算法序号为4时的参数。 示例： \-x UCX\_BUILTIN\_DEGREE\_INTER\_FANOUT=8 |
| \-x UCX\_BUILTIN\_DEGREE\_INTER\_FANOUT= | \-x UCG\_PLANC\_UCX\_BARRIER\_FANOUT\_INTRA\_DEGREE= | 取值类型：int 取值范围：任意正整数 说明： 建议配置为2~参与通信进程数量间的正整数。 默认值：8 | 可选参数，表示算法使用的节点间K项树的扇出值。具体算法如下： Allreduce算法的算法序号为7和8时的参数。 Barrier算法的算法序号为6和7时的参数。 Bcast算法的算法序号为4时的参数。 示例： \-x UCX\_BUILTIN\_DEGREE\_INTER\_FANOUT=8 |
| \-x UCX\_BUILTIN\_DEGREE\_INTER\_FANOUT= | \-x UCG\_PLANC\_UCX\_BCAST\_NA\_KNTREE\_INTER\_DEGREE= | 取值类型：int 取值范围：任意正整数 说明： 建议配置为2~运行作业节点数量间的正整数。 默认值：8 | 可选参数，表示算法使用的节点间K项树的扇出值。具体算法如下： Allreduce算法的算法序号为7和8时的参数。 Barrier算法的算法序号为6和7时的参数。 Bcast算法的算法序号为4时的参数。 示例： \-x UCX\_BUILTIN\_DEGREE\_INTER\_FANOUT=8 |
| \-x UCX\_BUILTIN\_DEGREE\_INTER\_FANIN= | \-x UCG\_PLANC\_UCX\_ALLREDUCE\_FANIN\_INTER\_DEGREE= | 取值类型：int 取值范围：任意正整数 说明： 建议配置为2~运行作业节点数量间的正整数。 默认值：8 | 可选参数，表示算法使用的节点间K项树的扇入值。具体算法如下： Allreduce算法的算法序号为7和8时的参数。 Barrier算法的算法序号为6和7时的参数。 示例： \-x UCX\_BUILTIN\_DEGREE\_INTER\_FANIN=8 |
| \-x UCX\_BUILTIN\_DEGREE\_INTER\_FANIN= | \-x UCG\_PLANC\_UCX\_BARRIER\_FANIN\_INTER\_DEGREE= | 取值类型：int 取值范围：任意正整数 说明： 建议配置为2~运行作业节点数量间的正整数。 默认值：8 | 可选参数，表示算法使用的节点间K项树的扇入值。具体算法如下： Allreduce算法的算法序号为7和8时的参数。 Barrier算法的算法序号为6和7时的参数。 示例： \-x UCX\_BUILTIN\_DEGREE\_INTER\_FANIN=8 |
| \-x UCX\_BUILTIN\_DEGREE\_INTRA\_FANOUT= | \-x UCG\_PLANC\_UCX\_ALLREDUCE\_FANOUT\_INTRA\_DEGREE= | 取值类型：int 取值范围：任意正整数 说明： 建议配置为2~参与通信进程数量间的正整数。 默认值：2 | 可选参数，表示算法使用的节点内K项树的扇出值。具体算法如下： Allreduce算法的算法序号为5、6、7和8时的参数。 Barrier算法的算法序号为4、5、6和7时的参数。 Bcast算法的算法序号为3和4时的参数。 示例： \-x UCX\_BUILTIN\_DEGREE\_INTRA\_FANOUT=8 |
| \-x UCX\_BUILTIN\_DEGREE\_INTRA\_FANOUT= | \-x UCG\_PLANC\_UCX\_BARRIER\_FANOUT\_INTRA\_DEGREE= | 取值类型：int 取值范围：任意正整数 说明： 建议配置为2~参与通信进程数量间的正整数。 默认值：2 | 可选参数，表示算法使用的节点内K项树的扇出值。具体算法如下： Allreduce算法的算法序号为5、6、7和8时的参数。 Barrier算法的算法序号为4、5、6和7时的参数。 Bcast算法的算法序号为3和4时的参数。 示例： \-x UCX\_BUILTIN\_DEGREE\_INTRA\_FANOUT=8 |
| \-x UCX\_BUILTIN\_DEGREE\_INTRA\_FANOUT= | \-x UCG\_PLANC\_UCX\_BCAST\_NA\_KNTREE\_INTRA\_DEGREE= | 取值类型：int 取值范围：任意正整数 说明： 建议配置为2~参与通信进程数量间的正整数。 默认值：2 | 可选参数，表示算法使用的节点内K项树的扇出值。具体算法如下： Allreduce算法的算法序号为5、6、7和8时的参数。 Barrier算法的算法序号为4、5、6和7时的参数。 Bcast算法的算法序号为3和4时的参数。 示例： \-x UCX\_BUILTIN\_DEGREE\_INTRA\_FANOUT=8 |
| \-x UCX\_BUILTIN\_DEGREE\_INTRA\_FANIN= | \-x UCG\_PLANC\_UCX\_ALLREDUCE\_FANIN\_INTRA\_DEGREE= | 取值类型：int 取值范围：任意正整数 说明： 建议配置为2~参与通信进程数量间的正整数。 默认值：2 | 可选参数，表示算法使用的节点内K项树的扇入值。具体算法如下： Allreduce算法的算法序号为5、6、7和8时的参数。 Barrier算法的算法序号为4、5、6和7时的参数。 示例： \-x UCX\_BUILTIN\_DEGREE\_INTRA\_FANIN=2 |
| \-x UCX\_BUILTIN\_DEGREE\_INTRA\_FANIN= | \-x UCG\_PLANC\_UCX\_BARRIER\_FANIN\_INTRA\_DEGREE= | 取值类型：int 取值范围：任意正整数 说明： 建议配置为2~参与通信进程数量间的正整数。 默认值：2 | 可选参数，表示算法使用的节点内K项树的扇入值。具体算法如下： Allreduce算法的算法序号为5、6、7和8时的参数。 Barrier算法的算法序号为4、5、6和7时的参数。 示例： \-x UCX\_BUILTIN\_DEGREE\_INTRA\_FANIN=2 |
| \-x UCX\_BUILTIN\_BCAST\_ALGORITHM= | \-x UCG\_PLANC\_UCX\_BCAST\_ATTR= | 取值类型：int 取值范围：1~5 默认值：无固定值，根据生效规则调节赋值。 | 可选参数，用于选择Bcast算法序号的参数。 示例： \-x UCX\_BUILTIN\_BCAST\_ALGORITHM=4 |
| \-x UCX\_BUILTIN\_ALLREDUCE\_ALGORITHM= | \-x UCG\_PLANC\_UCX\_ALLREDUCE\_ATTR= | 取值类型：int 取值范围：1~14 默认值：无固定值，根据生效规则调节赋值。 | 可选参数，用于选择Allreduce算法序号的参数。 示例： \-x UCX\_BUILTIN\_ALLREDUCE\_ALGORITHM=7 |
| \-x UCX\_BUILTIN\_BARRIER\_ALGORITHM= | \-x UCG\_PLANC\_UCX\_BARRIER\_ATTR= | 取值类型：int 取值范围：1~10 默认值：无固定值，根据生效规则调节赋值。 | 可选参数，用于选择Barrier算法序号的参数。 示例： \-x UCX\_BUILTIN\_BARRIER\_ALGORITHM=1 |
| \-x UCX\_BUILTIN\_MAX\_MSG\_LIST\_SIZE= | \-x UCG\_PLANC\_UCX\_NPOLLS= | 取值类型：int 取值范围：任意正整数 默认值：40 | 可选参数，P2P请求测试UCP进度轮询周期数。 示例： \-x UCX\_BUILTIN\_MAX\_MSG\_LIST\_SIZE=40 |
| \-x UCX\_BUILTIN\_REDUCE\_CONSISTENCY= | \-x UCG\_PLANC\_UCX\_REDUCE\_CONSISTENCY= | 取值类型：string 取值范围： y：保证allreduce结果一致性 n：不保证allreduce结果一致性 默认值：n | 可选参数，UCG中Allreduce结果是否保证一致性。 示例： \-x UCX\_BUILTIN\_REDUCE\_CONSISTENCY=n |
