Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PP-ShiTuv2模型在ARM64(RK3588)上部署运行导致linux系统重启 #3248

Open
wenzhu2018 opened this issue Sep 13, 2024 · 2 comments
Open
Assignees

Comments

@wenzhu2018
Copy link

欢迎您使用PaddleClas并反馈相关问题,非常感谢您对PaddleClas的贡献!
提出issue时,辛苦您提供以下信息,方便我们快速定位问题并及时有效地解决您的问题:

  1. PaddleDetection-2.7.0 PaddleClas-2.5.2
  2. 硬件环境rk3588 Debian11,使用的是CPU,未使用NPU,paddlelite使用过2.10rc、2.12、2.13rc
  3. 训练环境信息:
    a. 具体操作系统,Centos7.5
    b. Python版本号,Python3.8
    c. CUDA/cuDNN版本, CUDA12.0
    4、使用的是PaddleClas里的 shitu_android_demo中的cpp代码和lite_shitu,结果一样

问题现象:
PP-ShiTuv2的主体检测模型picodet的inference模型通过paddlelite opt工具转成nb模型放到RK3588 arm64板子上运行,运行时直接导致RK3588 Debian11系统重启;
用官方文档的量化nb模型运行正常,官方的量化是ppshituv2_lite_models_v1.0/mainbody_PPLCNet_x2_5_640_quant_v1.0_lite.nb 和general_PPLCNetV2_base_quant_v1.0_lite.nb,官方的文档里也只讲把export_model导出的inference模型用opt转换,并未涉及到主体检测模型的量化,查看代码也未看见主体检测的量化配置文件
用官方的提供的主体检测和识别的inference模型通过opt命令转换后nb模型,运行时也直接Linux系统直接重启
识别模型用代码里的PPLCNetV1的配置文件进行量化训练,然后export_model导出,然后再经过opt转换貌似搞定,但主体检测模型量化训练没看见相似的量化配置文件,且识别模型里也只有PPLCNetV1的量化配置,没看见PPLCNetV2的配置

有搞过的同学或者朋友指点一下,请版主帮忙指点一下,已经过了2周还没有解决问题,甚至paddlelite 的库我在RK3588 Debian11重新编译过,代码运行到predictor_->Run() 系统重启

@wenzhu2018
Copy link
Author

有没有人帮忙指导下?

@zhang-prog
Copy link
Collaborator

这种情况确实没遇到过,建议试试调低 shitu_config.json 里的 cpu_num_threads ,例如调成 1 。另外每次换了模型后确认更改了 shitu_config.jsondet_model_path 等路径吗?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants