运行应用

样例步骤适用于以下产品。
- Atlas 200/300/500 推理产品
- Atlas 推理系列产品
- Atlas 训练系列产品
模型转换
- 以HwHiAiUser(运行用户)登录开发环境并部署用例。
- 参见《ATC工具使用指南》中的ATC工具使用环境搭建,获取ATC工具并设置环境变量。
- 准备数据。
从以下链接获取ResNet-50网络的权重文件(*.caffemodel)、模型文件(resnet50.prototxt),并以HwHiAiUser(运行用户)将获取的文件上传至开发环境的“resnet50_async_imagenet_classification样例目录/caffe_model”目录下。
- 将ResNet-50网络转换为适配昇腾AI处理器的离线模型(*.om文件)。
切换到“resnet50_async_imagenet_classification”目录,执行如下命令。Ascendxxx为使用的昇腾AI处理器版本,请用户自行替换。
atc --model=caffe_model/resnet50.prototxt --weight=caffe_model/resnet50.caffemodel --framework=0 --output=model/resnet50 --soc_version=Ascendxxx --input_format=NCHW --input_fp16_nodes=data --output_type=FP32 --out_nodes=prob:0
- “--output”参数:生成的“resnet50.om”文件存放在“resnet50_async_imagenet_classification/model”目录下。
- 使用atc命令时用户需保证对“resnet50_async_imagenet_classification”目录有写权限。
- 如果无法确定当前设备的soc_version,则在安装NPU驱动包的服务器执行npu-smi info命令进行查询,在查询到的“Name”前增加Ascend信息,例如“Name”对应取值为xxxyy,实际配置的soc_version值为Ascendxxxyy。
- 以HwHiAiUser(运行用户)将开发环境的样例目录及目录下的文件上传到运行环境。
运行应用
- 登录运行环境。
- 准备测试数据。 请从以下链接获取该样例的输入图片,并以运行用户将获取的文件上传至运行环境的“resnet50_async_imagenet_classification/data”目录下。如果目录不存在,需自行创建。
- 参照环境变量配置完成运行环境的配置。
- 在“resnet50_async_imagenet_classification”路径下执行如下命令:
python3 ./src/acl_net.py
- 执行成功后,在屏幕上的关键提示信息示例如下。
Using device id:0 execute_times:4 callback_interval:1 mem_pools:4 model path:./model/resnet50.om images path:./data init resource stage: init resource stage success data interaction from host to device data interaction from host to device success execute stage: execute stage success callback func stage: ======== top5 inference results: ============= [161]: 0.767578 [162]: 0.154785 [167]: 0.038513 [163]: 0.021606 [166]: 0.011658 callback func stage success callback func stage: ======== top5 inference results: ============= [267]: 0.935547 [266]: 0.041107 [265]: 0.018829 [219]: 0.002607 [160]: 0.000295 callback func stage success callback func stage: ======== top5 inference results: ============= [161]: 0.767578 [162]: 0.154785 [167]: 0.038513 [163]: 0.021606 [166]: 0.011658 callback func stage success callback func stage: ======== top5 inference results: ============= [267]: 0.935547 [266]: 0.041107 [265]: 0.018829 [219]: 0.002607 [160]: 0.000295 callback func stage success exit acl.rt.process_report run finish!!! release source stage: release source stage success