模型部署——RKNN模型性能评估和内存评估(附代码)

本文详细介绍了如何在Ubuntu系统上使用rknn-toolkit将Pytorch模型转换为RKNN模型,包括模型精度分析、评估、部署,以及如何进行性能评估API和内存评估的步骤,提供示例代码和输出结果,适合深度学习开发者进行RKNN模型优化实践。
摘要由CSDN通过智能技术生成

欢迎学习RKNN系列相关文章,从模型转换、精度分析,评估到部署,推荐好资源:
一、Ubuntu系统上安装rknn-toolkit
二、使用rknn-toolkit将Pytorch模型转为RKNN模型
三、RKNN模型的评估和推理测试
四、RKNN模型量化精度分析及混合量化提高精度
五、RKNN模型性能评估和内存评估
六、rknn-toolkit-lite2部署RKNN模型到开发板上(python版)
七、RKNN C API开发板上落地部署RKNN模型
八、RKNN零拷贝API开发板落地部署RKNN模型


在这里插入图片描述

一、源码包获取

配套教程提供的RKNN模型在源码包中,获取源码包的方法为文章末扫码到公众号中回复关键字:RKNN模型性能和内存评估。获取下载链接。

下载解压后的样子如下:

在这里插入图片描述

二、模型性能评估

2.1 模型性能评估API说明

RKNN模型性能的评估主要调用的接口是rknn.eval_perf(),关于此API的说明见下:

在这里插入图片描述

2.2 模型性能评估流程

具体的模型性能评估流程如下:

下面是直接读入RKNN模型:

在这里插入图片描述

2.3 代码

from rknn.api import RKNN

if __name__ == "__main__":
    rknn = RKNN()

    # 使用load_rknn接口导入RKNN模型
    rknn.load_rknn(path="./resnet18.rknn")

    # 使用init_runtime接口初始化运行环境
    rknn.init_runtime(
        # target = None,
        target="rk3588",
        perf_debug = True,          # 表示是否开启性能评估的Debug模式
        eval_mem = False,            # 表示是否是内存评估
    )

    # 使用eval_perf接口进行性能评估
    rknn.eval_perf(
        inputs = ["space_shuttle_224.jpg"],    # 表示要测试的图片
        data_format=None,                      # 表示要推理的数据模式
        is_print = True,                       # 表示使能打印性能信息

    )

    rknn.release()

2.4 输出结果

在这里插入图片描述

下面是输出的各项参数:

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

三、模型内存评估

3.1 模型内存评估API说明

RKNN模型内存的评估主要调用的接口是rknn.eval_memory(),关于此API的说明见下:

在这里插入图片描述

3.2 模型内存评估流程

模型内存评估的流程同2.2。

3.3 代码

from rknn.api import RKNN

if __name__ == "__main__":
    rknn = RKNN()

    # 使用load_rknn接口导入RKNN模型
    rknn.load_rknn(path="./resnet18.rknn")

    # 使用init_runtime接口初始化运行环境
    rknn.init_runtime(
        # target = None,
        target="rk3588",
        perf_debug = True,          # 表示是否开启性能评估的Debug模式
        eval_mem = True,            # 表示是否是内存评估
    )

    # 使用eval_memory接口进行内存评估
    rknn.eval_memory(
        is_print=True,   # 表示使能打印内存评估信息
    )

    rknn.release()

3.4 模型内存评估结果

运行上面脚本后得到的输出如下:

在这里插入图片描述

四、总结

以上就是RKNN模型性能评估和内存评估的API说明,代码和输出结果各参数解析,更多的资料参考官网文档。

总结不易,多多支持,谢谢!

  • 7
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

视觉研坊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值