昇腾社区首页
中文
注册

命令格式说明

Vector比对命令行格式如下:

python3 msaccucmp.py compare -m my_dump_path -g golden_dump_path -f fusion_rule_file [-out output] [-op op_name] [-o output_tensor] [-i input_tensor] [-c custom_script_path] [-v version] [-n topn] [--ignore_single_op_result] [-ml max_line] [-overflow_detection]

命令行参数说明如表1所示。

精度比对工具保存在Ascend-cann-toolkit安装目录/ascend-toolkit/latest/toolkit/tools/operator_cmp/compare目录下。

表1 单算子比对命令行参数说明

参数名

参数说明

是否必选

-m

--my_dump_path

基于昇腾AI处理器运行生成的dump数据文件所在目录。即为3查找的参数dump结果目录。

由于dump数据文件是多个二进制文件,故须指定dump数据文件所在的父目录。如:/home/HwHiAiUser/MyApp_mind/resnet50,其中resnet50文件夹下直接保存dump数据文件。

-g

--golden_dump_path

基于GPU/CPU运行生成的TensorFlow原始网络npy数据文件所在目录。

由于npy数据文件是多个npy文件,故须指定npy数据文件所在的父目录。如:/home/HwHiAiUser/Standard_caffe/resnet50 其中resnet50文件夹下直接保存npy数据文件。

-f

--fusion_rule_file

全网层信息文件(通过使用ATC转换.txt图文件生成的json文件)。.txt图文件为2查找的计算图文件。

-out

--output

比对数据结果存放路径,默认为当前路径。

-op

--op_name

单算子比对的算子名。输入待比对算子名,算子名获取方式有:

  • 直接从训练模型中获取。
  • 从计算图文件(*.txt)中获取。
  • 从整网比对的结果文件中获取。

-o

--output_tensor

比对指定index的output数据,与-i互斥。配置-op时有效。

当-o与-i均未配置时,默认比对output数据的index为0的数据。

-i

--input_tensor

比对指定index的input数据,与-o互斥。配置-op时有效。

-c

--custom_script_path

用户自定义Format转换.py文件存放路径,需指定到“format_convert”目录的上一层目录。.py文件相关要求参见准备自定义Format转换.py文件

不建议调用与当前用户不一致的其它用户目录下的自定义脚本文件,避免提权风险。

-v

--version

dump文件类型,1代表protobuf序列化后的数据文件,2代表自定义格式的数据文件。默认取2。

-n

--topn

仅展示绝对误差和相对误差的前n项数据,比对完成后打屏展示并生成csv结果文件,取值范围为[1,100],默认值为20。配置-op时有效。

生成的csv结果文件名分别为:

  • 绝对误差:{op_name}_{input/output}_{index}_absolute_error_topn.csv
  • 相对误差:{op_name}_{input/output}_{index}_relative_error_topn.csv

--ignore_single_op_result

csv结果文件中不生成单算子比对的详细比对数据。配置-op时有效。

不配置本参数时,生成详细比对结果。

-ml

--max_line

单算子比对时生成的单个csv文件所包含最大的文件条数,取值范围为[10000,1000000],默认值为1000000。配置-op时有效。

文件中单算子的比对结果数据条数较大时,配置本参数可以将csv文件拆分为多个文件。比如数据条数为100000条,配置本参数为10000,那么比对结果则输出10个csv文件。

-overflow_detection

单算子溢出检测。配置本参数进行单算子精度比对时可检测溢出算子,以打屏形式输出。

默认未配置本参数。

当算子的Tensor数据类型是fp16时,tensor中的任意一个数值的绝对值 >= 65504,认为算子溢出。