查看: 2094|回复: 0

OK3588初体验之cpu的高性能之旅

[复制链接]
  • TA的每日心情
    开心
    2024-8-27 11:22
  • 签到天数: 209 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2023-4-26 10:13:20 | 显示全部楼层 |阅读模式
    分享到:
    本帖最后由 一代睡神的崛起 于 2023-4-26 10:13 编辑

    一、走进CPU世界的NCNN
      首先RK3588具有四核Cortex-A76@2.4GHz+四核Cortex-A55@1.8GHz属于一个真八核的CPU,相对已RK3568也有一个大的提升。本来之前打算是验证ARM集成的Mail-G610的GPU性能,但是小编的工作环境选择的是Linux而不是Android,因此NCNN不具备调用Mali_GPU相关接口的API函数,因此支持利用NCNN来验证8核CPU对int8数据的图像推理能力了。闲话不多说,直接开干。
    1.png

      克隆ncnn按照上面的安装说明进行安装,安装成功后可以使用pkg-config ncnn --modversion进行查看。如下图:
    2.png


    二、nanodet让爱照进现实

      相信有不少人在装有显卡的PC机上玩过yolo、SSD等模型推理,但是想让这些模型成功落地在嵌入式设备上却让很多工程师翻了愁,即使在不损失很多的极度下对FP32数据类型进行剪枝、量化、蒸馏得到比较适中的计算参数量的GFLOPS--int8模型,但是一旦上了嵌入式设备上依然显得那么的冗余与繁重,因此如何利用一个轻量的backbone训练出来的权重模型成为了当下在嵌入式设备上部署的关注点。

      可能有很多工程师都不约而同的使用过很多轻量级模型,例如mobilenet、shuffnet、inspetnet等作为backbone创造出来的模型,但是都面临一个共同问题就是速度虽然上去了,但是精度确实那样的令人唏嘘。nanodet作为商汤科技基于旷视科技提出的shuffnetv2网络创建的物体目标检测推理矿建,适配市面上常用的深度学习框架pytorch,tensorflow2,openvinio,ncnn等。nanodet在推理工作上既响应了速度又兼顾了精确度,算得上是嵌入式设备对目标检测的一大利器。

      克隆nanodet在其谷歌云中下载支持ncnn的模型权重,小编此次选择的是nanodet-plus-m_416,下载下来的模型权重已经量化为int8数据格式了,所以不需要再做额外的处理,然后进入demo_ncnn目录,这里注意的是如果是使用的安卓系统就进入demo_ncnn_andriod目录,android系统使用了Vulkan厂家调用Mali_GPU的API函数,因此可以直接让ARM的Mali_GPU直接放飞自我。然后根据里面的安装说明进行安装,安装完后就可以使用ncnn加载CPU资源来推理图形数据了。使用8核CPU推理coco数据集可以看到FPS基本维持在15-30FPS之间,比使用NPU推理也只少了12FPS左右,所以RK3588此次升级的CPU也是足够的强大的。CPU这里小编将推理结果放在了附件内,有兴趣的小伙伴可以自行查看。
    3.jpg

      

    nanodet_ncnn.rar

    23.84 MB, 下载次数: 3

    nanodet推理结果

    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /5 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-12-20 02:31 , Processed in 0.124873 second(s), 16 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.