参数名 |
描述 |
---|---|
op_select_implmode |
昇腾AI处理器部分内置算子有高精度和高性能实现方式,用户可以通过该参数配置模型编译时选择哪种算子。取值包括:
配置示例:
npu.global_options().op_select_implmode="high_precision" |
optypelist_for_implmode |
列举算子optype的列表,该列表中的算子使用op_select_implmode参数指定的模式,当前支持的算子为Pooling、SoftmaxV2、LRN、ROIAlign,多个算子以“,”分隔。 该参数需要与op_select_implmode参数配合使用,配置示例: npu.global_options().op_select_implmode="high_precision" npu.global_options().optypelist_for_implmode="Pooling,SoftmaxV2" |
variable_format_optimize |
是否开启变量格式优化。
为了提高训练效率,在网络执行的变量初始化过程中,将变量转换成更适合在昇腾AI处理器上运行的数据格式。但在用户特殊要求场景下,可以选择关闭该功能开关。 配置示例: npu.global_options().variable_format_optimize=True |
hcom_parallel |
是否启用Allreduce梯度更新和前后向并行执行。
默认值为“True”,配置示例: npu.global_options().hcom_parallel=True |
enable_small_channel |
是否使能small channel的优化,使能后在channel<=4的卷积层会有性能收益。
配置示例: npu.global_options().enable_small_channel=1 |
stream_max_parallel_num |
此参数仅适用于NMT网络。 指定AICPU/AICORE引擎的并行度,从而实现AICPU/AICORE算子间的并行执行。 DNN_VM_AICPU为AICPU引擎名称,本示例指定了AICPU引擎的并发数为10; AIcoreEngine为AICORE引擎名称,本示例指定了AICORE引擎的并发数为1。 AICPU/AICORE引擎的并行度默认为1,取值范围为:[1,13]。 配置示例: npu.global_options().stream_max_parallel_num="DNN_VM_AICPU:10,AIcoreEngine:1" |
is_tailing_optimization |
此参数仅适用于Bert网络。 分布式训练场景下,是否开启通信拖尾优化,用于提升训练性能。通信拖尾优化即,通过计算依赖关系的改变,将不依赖于最后一个AR(梯度聚合分片)的计算操作调度到和最后一个AR并行进行,以达到优化通信拖尾时间的目的。取值:
配置示例: npu.global_options().is_tailing_optimization=True |
enable_scope_fusion_passes |
指定编译时需要生效的融合规则列表。此处传入注册的融合规则名称,允许传入多个,用“,”隔开。 无论是内置还是用户自定义的Scope融合规则,都分为如下两类:
配置示例: npu.global_options().enable_scope_fusion_passes="ScopeLayerNormPass,ScopeClipBoxesPass" |