开发者
下载
[object Object][object Object]

设置集群配置文件路径,用于配置目标执行逻辑设备信息以生成HCCL任务,多卡分布式训练场景下使用。此参数实际对应的options参数为[object Object]

若模型中包含通信算子(当前仅支持AllGather通信算子),该参数必填。

配置示例:

[object Object]

cluster_config.json配置示例如下:

[object Object]

参数说明解释如下:

  • RankTable:配置的核心,定义了参与计算的节点和rank信息。

    • status:必选,rank table可用标识。

      • completed:表示rank table可用。
      • initializing:表示rank table不可用。
    • version:必选,rank table模板版本信息,请配置为:1.2。

    • server_count:可选,参与集合通信的AI Server个数。

    • server_list:必选,参与集合通信的AI Server列表。

      • server_id:必选,AI Server标识,字符串类型,长度小于等于64,请确保全局唯一。配置示例:node_0。
      • device:必选,Device列表。
        • device_id:必选,AI处理器的物理ID,即Device在AI Server上的序列号。
        • rank_id:必选,rank唯一标识,请配置为整数,从0开始配置,且全局唯一,取值范围:[0, 总Device数量-1]。
  • HcclCommConfig:HCCL通信层的全局配置信息。

    • hcclCommName:必选,全局通信组的名称或标识符。

产品支持情况:

[object Object]
  • Ascend 950PR/Ascend 950DT:不支持
[object Object][object Object]
  • Atlas A3 训练系列产品/Atlas A3 推理系列产品:不支持
[object Object][object Object]
  • Atlas A2 训练系列产品/Atlas A2 推理系列产品:不支持
[object Object][object Object]
  • Atlas 200I/500 A2 推理产品:不支持
[object Object][object Object]
  • Atlas 推理系列产品:不支持
[object Object][object Object]
  • Atlas 训练系列产品:不支持
[object Object][object Object][object Object]

是否开启确定性计算。此参数实际对应的options参数为[object Object]

默认情况下,不开启确定性计算,算子在相同的硬件和输入下,多次执行的结果可能不同。这个差异的来源,一般是因为在算子实现中,存在异步的多线程执行,会导致浮点数累加的顺序变化。当开启确定性计算功能时,算子在相同的硬件和输入下,多次执行将产生相同的输出。

通常建议不开启确定性计算,因为确定性计算往往会导致算子执行变慢,进而影响性能。当发现模型多次执行结果不同,或者是进行精度调优时,可开启确定性计算,辅助模型调试、调优。

参数取值:

  • 0:(默认值)不开启确定性计算。
  • 1:开启确定性计算。

配置示例:

[object Object]

产品支持情况:

[object Object]
  • Ascend 950PR/Ascend 950DT:支持
[object Object][object Object]
  • Atlas A3 训练系列产品/Atlas A3 推理系列产品:支持
[object Object][object Object]
  • Atlas A2 训练系列产品/Atlas A2 推理系列产品:支持
[object Object][object Object]
  • Atlas 200I/500 A2 推理产品:不支持
[object Object][object Object]
  • Atlas 推理系列产品:支持
[object Object][object Object]
  • Atlas 训练系列产品:支持
[object Object][object Object][object Object]

静态shape场景下,是否启用模型推理顺序单流串行执行。此参数实际对应的options参数为[object Object]

其中,流(Stream)用于维护一些异步操作的执行顺序,确保按照应用程序中的代码调用顺序在Device上执行。

参数取值:

  • true:表示启用,模型推理顺序单流串行执行。
  • false:(默认值)表示关闭,模型推理时多流并行执行。

参数值约束:

模型中存在Cmo算子和如下控制类算子时,不能使用单Stream特性,只能使用默认值false。

  • Merge
  • Switch
  • Enter
  • RefEnter

配置示例:

[object Object]

产品支持情况:

[object Object]
  • Ascend 950PR/Ascend 950DT:支持
[object Object][object Object]
  • Atlas A3 训练系列产品/Atlas A3 推理系列产品:支持
[object Object][object Object]
  • Atlas A2 训练系列产品/Atlas A2 推理系列产品:支持
[object Object][object Object]
  • Atlas 200I/500 A2 推理产品:不支持
[object Object][object Object]
  • Atlas 推理系列产品:支持
[object Object][object Object]
  • Atlas 训练系列产品:支持
[object Object][object Object][object Object]

设置HCCL子通信域配置文件路径,用于配置HCCL子通信参数。多卡分布式训练场景下使用。此参数实际对应的options参数为[object Object]

若模型中包含通信算子(当前仅支持AllGather通信算子),该参数必填。若模型算子包含子通信域参数,但在模型编译时未指定HCCL_SUB_COMM_CONFIG参数,系统将默认依据集群的实际业务配置执行。

配置示例:

[object Object]

sub_comm_config.json文件示例如下:

[object Object]

其中:

  • RankIds:rank唯一标识,请配置为整数,从0开始配置,且全局唯一,取值范围:[0, 总Device数量-1]。

    建议rank_id按照Device物理连接顺序进行排序,即将物理连接上较近的Device编排在一起,否则可能会对性能造成影响。

    例如,若device_ip按照物理连接从小到大设置,则rank_id也建议按照从小到大的顺序设置。

  • hcclCommName:通信组命名,供程序调用和区分。

产品支持情况:

[object Object]
  • Ascend 950PR/Ascend 950DT:不支持
[object Object][object Object]
  • Atlas A3 训练系列产品/Atlas A3 推理系列产品:不支持
[object Object][object Object]
  • Atlas A2 训练系列产品/Atlas A2 推理系列产品:不支持
[object Object][object Object]
  • Atlas 200I/500 A2 推理产品:不支持
[object Object][object Object]
  • Atlas 推理系列产品:不支持
[object Object][object Object]
  • Atlas 训练系列产品:不支持
[object Object][object Object][object Object]

此参数实际对应的options参数为[object Object]

若模型编译环境的操作系统及其架构与模型运行环境不一致时,则需使用本参数设置模型运行环境的操作系统类型。如果不设置,则默认取模型编译环境的操作系统类型。

模型编译环境的操作系统及其架构与模型运行环境不一致时,需要与OPTION_HOST_ENV_CPU参数配合使用,通过OPTION_HOST_ENV_OS参数设置操作系统类型、通过OPTION_HOST_ENV_CPU参数设置操作系统架构。

参数取值:

查看[object Object]下打包的算子so的OS类型。

参数默认值:

查看${INSTALL_DIR}/opp/scene.info文件中的取值。

[object Object]请替换为CANN软件安装后文件存储路径。以root用户安装为例,安装后文件默认存储路径为:/usr/local/Ascend/cann。

配置示例:

[object Object]

产品支持情况:

全量芯片支持。

[object Object]

此参数实际对应的options参数为[object Object]

若模型编译环境的操作系统及其架构与模型运行环境不一致时,则需使用本参数设置模型运行环境的操作系统架构。如果不设置,则默认取模型编译环境的操作系统架构。

如果模型编译环境的操作系统及其架构与模型运行环境不一致,需要与OPTION_HOST_ENV_OS参数配合使用,通过OPTION_HOST_ENV_OS参数设置操作系统类型、通过OPTION_HOST_ENV_CPU参数设置操作系统架构。

参数取值:

查看[object Object]下打包的算子so的OS/CPU类型。

参数默认值:查看${INSTALL_DIR}/opp/scene.info文件中的取值。

[object Object]请替换为CANN软件安装后文件存储路径。以root用户安装为例,安装后文件默认存储路径为:/usr/local/Ascend/cann。

配置示例:

[object Object]
  • 若转换后的离线模型包含操作系统类型、架构,例如:xxx_linux_x86_64.om,则说明该模型运行的环境只能是x86_64架构的linux操作系统。
  • 若转换后的离线模型不包含操作系统类型、架构,例如:xxx.om,则说明CANN软件包所支持的操作系统,都支持该模型运行。

产品支持情况:

全量芯片支持。

[object Object]

图编译时使用的AI处理器型号。此参数实际对应的options参数为[object Object]

  • 若当前环境存在AI处理器,该参数可选。
  • 若当前环境不存在AI处理器,即开发环境,该参数必填。

参数取值:

<soc_version>查询方法请参见

配置示例:

[object Object]

产品支持情况:

全量芯片支持。

[object Object][object Object]

是否支持离线模型在昇腾虚拟化实例特性生成的虚拟设备上运行。此参数实际对应的options参数为[object Object]

当前芯片算力比较大,云端用户或者小企业完全不需要使用这么大算力,昇腾虚拟化实例特性支持对芯片的算力进行切分,可满足用户根据自己的业务按需申请算力的诉求。

虚拟设备是指按照指定算力在芯片上申请的虚拟加速资源。

参数取值:

  • 0:(默认值)离线模型不在昇腾虚拟化实例特性生成的虚拟设备上运行。
  • 1:离线模型在不同算力的虚拟设备上运行。

配置示例:

[object Object]

使用约束:

  1. 参数取值为1时,进行模型转换,则转换后离线模型参与计算的逻辑AI Core核数可能比实际aicore_num核数大,为aicore_num支持配置范围的最小公倍数:

    例如aicore_num支持配置范围为{1,2,4,8},参数取值为1转换后的离线模型,NPU运行核数可能为8。

  2. 参数取值为1时,转换后的模型,如果包括如下算子,会默认使用单核,该场景下,将会导致转换后的模型推理性能下降。

    • DynamicRNN
    • PadV2D
    • SquareSumV2
    • DynamicRNNV2
    • DynamicRNNV3
    • DynamicGRUV

产品支持情况:

[object Object]
  • Ascend 950PR/Ascend 950DT:支持
[object Object][object Object]
  • Atlas A3 训练系列产品/Atlas A3 推理系列产品:支持
[object Object][object Object]
  • Atlas A2 训练系列产品/Atlas A2 推理系列产品:支持
[object Object][object Object]
  • Atlas 200I/500 A2 推理产品:支持
[object Object][object Object]
  • Atlas 推理系列产品:支持
[object Object][object Object]
  • Atlas 训练系列产品:支持
[object Object][object Object]