Tencent / ncnn

ncnn is a high-performance neural network inference framework optimized for the mobile platform
Other
20.11k stars 4.14k forks source link

手机上启用vulkan的时候程序挂掉 #1767

Open 403712387 opened 4 years ago

403712387 commented 4 years ago

在手机上不启用vulkan的时候运行正常,启用vulkan的时候程序挂掉。手机型号为小米6s,gpu信息如下:api version:4194365, driver version:169039330, vendor id:20803, device id:83952128, shared memory size:32768 堆栈调用如下:


Build fingerprint: 'xiaomi/wayne/wayne:8.1.0/OPM1.171019.011/V10.2.5.0.ODCCNXM:user/release-keys' Revision: '0' ABI: 'arm64' pid: 18691, tid: 18691, name: weiyuan.example >>> com.weiyuan.example <<< signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x140 Cause: null pointer dereference x0 0000000000000140 x1 0000000000000001 x2 0000007fe061b120 x3 0000000000000003 x4 0000000000000000 x5 5365636146ffffff x6 0000000000800000 x7 0000800000000000 x8 0000000000000000 x9 000000000000000d x10 0000000000000011 x11 0000000000000000 x12 0101010101010101 x13 0000000000000010 x14 ffffffffffffffff x15 0000b438797ed8ba x16 000000741b1c7268 x17 00000074b66c08a8 x18 0000007416ba4cb4 x19 0000000000000140 x20 0000000000000000 x21 0000007fe061b2e0 x22 0000007fe061b2e8 x23 0000007fe061b300 x24 00000074b9943a40 x25 0000000000000001 x26 0000007fe061b1e0 x27 0000007fe061b240 x28 000000741b14b018 x29 0000007fe061ada0 x30 00000074191f64cc sp 0000007fe061ad90 pc 00000074b66c08a8 pstate 0000000020000000 [2409, u0] send(AppTransitionFinishedEvent) Timeline: Activity_windows_visible id: ActivityRecord{eb7e9d0 u0 com.weiyuan.example/com.weiyuan.activity.FaceAttrPreviewActivity t29017} time:20305725 [2409, u0] -> ForcedResizableInfoActivityController [0xb433fc, P1] onBusEvent(AppTransitionFinishedEvent) [2409, u0] onBusEvent(AppTransitionFinishedEvent) duration: 21 microseconds, avg: 1823 ActivityTrigger activityStopTrigger [2409, u0] send(AppTransitionFinishedEvent) [2409, u0] -> ForcedResizableInfoActivityController [0xb433fc, P1] onBusEvent(AppTransitionFinishedEvent) [2409, u0] onBusEvent(AppTransitionFinishedEvent) duration: 16 microseconds, avg: 1822 Timeline: App_transition_stopped time:20305760

backtrace:

00 pc 00000000000688a8 /system/lib64/libc.so (pthread_mutex_lock)

 #01 pc 0000000000a334c8  /data/app/com.weiyuan.example-xmaU6EUQHOBgX0tOAl_8Hg==/lib/arm64/libArcFaceSDK_arm64-v8a.so
 #02 pc 0000000000a48cb0  /data/app/com.weiyuan.example-xmaU6EUQHOBgX0tOAl_8Hg==/lib/arm64/libArcFaceSDK_arm64-v8a.so
 #03 pc 00000000001e69e0  /data/app/com.weiyuan.example-xmaU6EUQHOBgX0tOAl_8Hg==/lib/arm64/libArcFaceSDK_arm64-v8a.so (Position::detectPnet(cv::Mat const&)+1228)
 #04 pc 00000000001e432c  /data/app/com.weiyuan.example-xmaU6EUQHOBgX0tOAl_8Hg==/lib/arm64/libArcFaceSDK_arm64-v8a.so (BasePosition::detect(cv::Mat const&)+76)
 #05 pc 00000000001e2d14  /data/app/com.weiyuan.example-xmaU6EUQHOBgX0tOAl_8Hg==/lib/arm64/libArcFaceSDK_arm64-v8a.so (PositionHandle::facePosition(cv::Mat, std::__ndk1::vector<Bbox, std::__ndk1::allocator<Bbox>>&)+60)
 #06 pc 00000000001e2424  /data/app/com.weiyuan.example-xmaU6EUQHOBgX0tOAl_8Hg==/lib/arm64/libArcFaceSDK_arm64-v8a.so (FacePosition::detect(void*, int, int, T_MultiFaces*)+808)

model.zip

yippeesoft commented 4 years ago

pthread_mutex_lock?detect(cv::Mat?

403712387 commented 4 years ago

我们在使用的时候,传进去的是cv::Mat,在调用ncnn接口之前,会把cv::Mat转换成ncnn的Mat.

yippeesoft commented 4 years ago

直接跑个 vulkan 版本的benchmark呢