detail | 详细描述 | 詳細な説明
运行环境,android 只有cpu, 通过jni 调用native c++函数。
模型通过pnnx 转换为 ncnn格式,在windows pc运行正常。
使用上述方法得到的模型,在android系统运行时,就会必定引发崩溃。
具体运行到 ex.extract("out0", out) 时前几次正常,但很快就会引发app崩溃。
SIGSEGV (signal SIGSEGV: invalid address (fault address: 0xfffffff0))
ncnn::conv3x3s1_winograd_gemm_transB_packed_tile(ncnn::Mat const&, ncnn::Mat const&, ncnn::Mat&, int, int, int, int, int, int) 0x000000008baedc40
ZN4ncnnL20conv3x3s1_winograd63ERKNS_3MatERS0_S2_S2_iRKNS_6OptionE.omp_outlined_debug_.8 0x000000008baf4dd6
::_ZN4ncnnL20conv3x3s1_winograd63ERKNS_3MatERS0_S2_S2_iRKNS_6OptionE.omp_outlined.9() 0x000000008baf4c7a
__kmp_invoke_microtask 0x000000008bcdb200
4条答案
按热度按时间fcipmucu1#
detect代码
dnph8jn42#
20240820版本也是会崩溃吗?
https://github.com/Tencent/ncnn/releases/tag/20240820
ukxgm1gy3#
20240820版本也是会崩溃吗? https://github.com/Tencent/ncnn/releases/tag/20240820
是的,我就是用的20240820版本的,开始用的 ncnn-20240820-android.zip 但是和opencv一起编译时链接出错,于是自己从20240820的源码编译 -DNCNN_DISABLE_RTTI=OFF -DNCNN_DISABLE_EXCEPTION=OFF,然后用编译好的ncnn库就可以正常编译整个项目了,就出现了上述崩溃的问题。
5t7ly7z54#
20240820版本也是会崩溃吗? https://github.com/Tencent/ncnn/releases/tag/20240820
放在另一台安卓设备是可以正常跑的,应该是和设备的cpu或android系统有关吧。我用nihui的 ncnn-android-squeezenet apk跑在问题设备上也有同样的问题,就是单帧图片是可以正常推理的,但连续多次点击时就会app崩溃