工具使用说明
本章节介绍LynSDK提供的小工具,可快速实现典型场景的验证和应用。
Inferperf工具
Inferperf工具,用于将指定模型,按照指定配置(包括循环次数、输入/输出数据、分辨率和batch数),在指定芯片上运行,测试其APU推理模型的帧率。
LynSDK提供了同步和异步两种APU推理接口,因此Inferperf工具也相应提供了:
inferperf:同步接口推理的测试用例;
inferperfv2:异步接口推理的测试用例。
前提条件
已安装LynDrvier和LynSDK。具体说明参见产品用户指南(如《HE200用户指南》)的“软件安装”章节。
备注
安装LynSDK后需要进入 /usr/local/lynxi/sdk/tests/
目录下使用Inferperf工具,无需单独安装。
查看帮助
执行以下命令,查看工具的帮助信息。
./inferPerfv2 -h
测试模型帧率
操作命令
./inferPerfv2 [modelPath] [repeat_times] [-v deviceid] [-i input] [-o output] [-y height width] [-b batchsize]
配置说明
modelPath:用于指定经过Lyngor编译的模型生成物的存储路径。路径需要给到
Net_0/
。repeat_times:用于指定模型测试的循环次数。正整数,无取值上限。
-v deviceid:用于指定芯片的ID。符合产品实际。默认取值为0。
-i input:用于指定输入数据的路径。
数据类型:STRING
取值范围:.bin格式的数据文件,如input.bin
是否必选:否
默认取值:随机数
-o output:用于指定输出数据的路径。
数据类型:STRING
取值范围:.bin格式的数据文件,如output.bin
是否必选:否
-y height width:多分辨率模型场景,用于指定推理分辨率。单分辨率模型场景不涉及。
数据类型:INT
取值范围:与模型相关,符合模型实际分辨率
是否必选:多分辨率模型场景下必选,单分辨率模型场景不涉及
-b batchsize:用于指定推理batch。
数据类型:INT
取值范围:与模型相关,符合模型实际情况
是否必选:动态batch模型场景下必选,否则不涉及
操作示例
执行以下命令,测试指定模型 MobileNetv2_hk_speed_fp16_b1
在指定芯片0的APU上推理1000次的帧率。
./inferPerfv2 /data/hujing/model_data/haikang_output/lyngor_v1.7.4_fp16/runtime/MobileNetv2_hk_speed_fp16_b1/Net_0/ 1000 -v 0
结果显示:输出帧率896,单位:fps。

编解码工具(Codec Tool)
LynSDK编解码工具(Codec Tool)主要用于对编解码任务进行配置和调试。
编解码分析工具由Python程序和C++程序组成,按照命令行参数输入和JSON配置文件设置,运行并产生数据;采集并分析C++运行产生的数据并分析生成对应的报告。
具体使用说明参见《LynSDK编解码工具(Codec Tool)用户指南》。
推理工具(Model Tool)
LynSDK推理工具(简称Model Tool)用于对Lyngor编译后的模型进行基本信息查询、推理性能测试和比对,以便进一步优化改进模型。
Model Tool的主要功能包括:
适用于Python和C语言开发环境;
查询模型基本信息,如模型的任务数量、输入/输出tensor信息等。
查询SDK API耗时,如推理耗时、拷贝文件耗时等。
查询硬件执行推理耗时,包括loadnn和startnn耗时。
支持二进制对比和精度对比。其中精度对比仅限Python场景使用。
具体使用说明参见《LynSDK推理工具(Model Tool)用户指南》。