--op_precision_mode
功能说明
设置指定算子内部处理时的精度模式,支持指定一个算子或多个算子。
关联参数
该参数不能与--op_select_implmode、--optypelist_for_implmode参数同时使用,若三个参数同时配置,则只有--op_precision_mode参数指定的模式生效。
参数取值
参数值:设置算子精度模式的配置文件(.ini格式)路径以及文件名,配置文件中支持设置如下精度模式:
- high_precision:表示高精度。
- high_performance:表示高性能。
- support_out_of_bound_index:表示对gather、scatter和segment类算子的indices输入进行越界校验, 校验会降低算子的执行性能。
具体某个算子支持配置的精度/性能模式取值,可以通过CANN软件安装后文件存储路径的opp/built-in/op_impl/ai_core/tbe/impl_mode/all_ops_impl_mode.ini文件查看。
参数值格式:路径和文件名:支持大小写字母(a-z,A-Z)、数字(0-9)、下划线(_)、中划线(-)、句点(.)、中文字符。
参数值约束:
- 当前仅支持通过.ini配置文件方式设置算子精度,配置文件中的内容以key_value(算子类型=精度模式)形式呈现,每一行设置一个算子的精度模式。
- 算子类型必须为基于Ascend IR定义的算子的OpType,算子类型查看方法请参见如何确定原始框架网络模型中的算子与昇腾AI处理器支持的算子的对应关系。
推荐配置及收益
- 该参数不建议配置,若使用高性能或者高精度模式,网络性能或者精度不是最优,则可以使用该参数,通过配置ini文件调整具体某个算子的精度模式。
- 通过该参数加载的ini配置文件,建议使用--op_select_implmode参数用户另存后的ini配置文件,详情请参见推荐配置及收益。
示例
构造算子精度模式配置文件op_precision.ini,并在该文件中按照算子类型、节点名称设置精度模式,每一行设置一个算子类型或节点名称的精度模式,按节点名称设置精度模式的优先级高于按算子类型。
配置样例如下:
[ByOpType] optype1=high_precision optype2=high_performance optype3=support_out_of_bound_index [ByNodeName] nodename1=high_precision nodename2=high_performance nodename3=support_out_of_bound_index
将配置好的op_precision.ini文件上传到ATC工具所在服务器任意目录,例如上传到$HOME/conf,使用示例如下:
--op_precision_mode=$HOME/conf/op_precision.ini
支持的芯片型号
Atlas 200/500 A2推理产品
依赖约束
无。
父主题: 算子调优选项