更新时间:2021-03-18 GMT+08:00
分享

ACL初始化

基本原理

您必须调用aclInit接口初始化ACL,配置文件格式为json格式,当前可配置dump数据的相关信息,示例请参见“配置文件示例”,详细配置说明请参见精度比对工具使用指导中的比对数据准备 > 准备离线模型dump数据文件

如果不涉及配置信息,需向aclInit接口中传入空指针,示例如下:

aclError ret = aclInit(nullptr);

示例代码

调用接口后,需增加异常处理的分支,同时通过ERROR_LOG记录报错日志、通过INFO_LOG记录各动作的提示日志,示例代码中不一一列举。

示例代码如下,您可以从acl_dvpp_resnet50样例的“src/sample_process.cpp”文件中查看完整样例代码。

1
2
3
4
5
6
7
8
#include "acl/acl.h"
//......
//初始化基本配置。
//此处的..表示相对路径,相对可执行文件所在的目录
//例如,编译出来的可执行文件存放在out目录下,此处的..就表示out目录的上一级目录
const char *aclConfigPath = "../src/acl.json";
aclError ret = aclInit(aclConfigPath);
//......

配置文件示例

以Caffe ResNet-50网络为例,若需要比对Caffe ResNet-50网络与基于Caffe ResNet-50转换成的适配昇腾AI处理器的离线模型中某些层算子的输出结果,可以在acl.json配置文件中配置如下内容:

{                                                                                            
	"dump":{                                                                                 
		"dump_list":[                                                                        
			{                                                                                
				"model_name":"ResNet-50",
				"layer":[
				      "conv1conv1_relu",
				      "res2a_branch2ares2a_branch2a_relu",
				      "res2a_branch1",
				      "pool1"
				]                                                     
			}                                                                                
		],                                                                                   
		"dump_path":"/MyApp20/dump",
                "dump_mode":"input"
	}                                                                                        
}
分享:

    相关文档

    相关产品

close