(SNPE1.19.2)在HAL层调用SNPE.so文件时的crash问题。

无知无为 2018-10-24 09:07:51
将/snpe-1.19.2/examples/NativeCpp/SampleCode/jni中的main.cpp的代码修改成传参数的函数,传输到dlc, output, inputFile 等参数,然后封装成libdeepmodel.so文件,在HAL调用。总是出现crash,如下:

01-02 08:19:18.494 3300 3300 F DEBUG : backtrace:
01-02 08:19:18.494 3300 3300 F DEBUG : #00 pc 00046e90 /system/lib/libc.so (pthread_create+227)
01-02 08:19:18.494 3300 3300 F DEBUG : #01 pc 00064eb7 /system/vendor/lib/libCB.so (cl_a5x_ddl_create_device_context+570)
01-02 08:19:18.494 3300 3300 F DEBUG : #02 pc 00027877 /system/vendor/lib/libCB.so (cb_create_context+630)
01-02 08:19:18.494 3300 3300 F DEBUG : #03 pc 00008d51 /system/vendor/lib/libOpenCL.so (qCLDrvAPI_clCreateContext+44)
01-02 08:19:18.494 3300 3300 F DEBUG : #04 pc 00085f7f /system/lib/libSNPE.so
01-02 08:19:18.495 3300 3300 F DEBUG : #05 pc 00086721 /system/lib/libSNPE.so
01-02 08:19:18.495 3300 3300 F DEBUG : #06 pc 00049bad /system/lib/libSNPE.so
01-02 08:19:18.495 3300 3300 F DEBUG : #07 pc 00049caf /system/lib/libSNPE.so
01-02 08:19:18.495 3300 3300 F DEBUG : #08 pc 00047b27 /system/lib/libSNPE.so (_ZN3zdl4SNPE11SNPEFactory18isRuntimeAvailableENS_8DlSystem9Runtime_tE+90)
01-02 08:19:18.495 3300 3300 F DEBUG : #09 pc 00006473 /system/lib/hw/libdeepmodel.so (_Z12checkRuntimev+126)
01-02 08:19:18.495 3300 3300 F DEBUG : #10 pc 0000630f /system/lib/hw/libdeepmodel.so (SnpeDLC+542)
01-02 08:19:18.495 3300 3300 F DEBUG : #11 pc 0009d95d /system/lib/hw/camera.msm8996.so (_ZN7qcamera25QCamera2HardwareInterface25preview_stream_cb_routineEP21mm_camera_super_buf_tPNS_13QCameraStreamEPv+1448)
01-02 08:19:18.495 3300 3300 F DEBUG : #12 pc 00093c99 /system/lib/hw/camera.msm8996.so (_ZN7qcamera13QCameraStream15dataProcRoutineEPv+88)
01-02 08:19:18.495 3300 3300 F DEBUG : #13 pc 00046fe3 /system/lib/libc.so (_ZL15__pthread_startPv+22)
01-02 08:19:18.495 3300 3300 F DEBUG : #14 pc 00019ced /system/lib/libc.so (__start_thread+6)
01-02 08:19:18.504 833 3265 I mm-camera: <MCT >< INFO> 1021: mct_controller_handle_SOF_proc: (sofdelay, curr_sofdelay) = (0, 0) kptr 113
01-02 08:19:18.514 833 3258 E mm-camera: <STATS_AEC ><ERROR> 2096: aec_process_calc_current_hist_metered_luma: error: out of range, exit
01-02 08:19:18.534 833 3252 E mm-camera: <CPP ><ERROR> 1608: cpp_hardware_process_frame: processing frame failed -11
01-02 08:19:18.539 833 3265 I mm-camera: <MCT >< INFO> 1021: mct_controller_handle_SOF_proc: (sofdelay, curr_sofdelay) = (0, 0) kptr 114
01-02 08:19:18.553 833 3258 E mm-camera: <STATS_AEC ><ERROR> 2096: aec_process_calc_current_hist_metered_luma: error: out of range, exit
01-02 08:19:18.556 833 3252 E mm-camera: <CPP ><ERROR> 1608: cpp_hardware_process_frame: processing frame failed -11
01-02 08:19:18.574 567 674 W SurfaceFlinger: EventThread: dropping event (7673796e) for connection 0x7fa0d77170
01-02 08:19:18.579 833 3265 I mm-camera: <MCT >< INFO> 1021: mct_controller_handle_SOF_proc: (sofdelay, curr_sofdelay) = (0, 0) kptr 115
01-02 08:19:18.586 833 3258 E mm-camera: <STATS_AEC ><ERROR> 2096: aec_process_calc_current_hist_metered_luma: error: out of range, exit
01-02 08:19:18.589 735 957 E audio_hw_primary: start_output_stream: pcm_prepare returned -1
01-02 08:19:18.589 567 674 W SurfaceFlinger: EventThread: dropping event (7673796e) for connection 0x7fa0d77170
01-02 08:19:18.593 833 3252 E mm-camera: <CPP ><ERROR> 1608: cpp_hardware_process_frame: processing frame failed -11
01-02 08:19:18.606 567 674 W SurfaceFlinger: EventThread: dropping event (7673796e) for connection 0x7fa0d77170
01-02 08:19:18.611 833 3265 I mm-camera: <MCT >< INFO> 1021: mct_controller_handle_SOF_proc: (sofdelay, curr_sofdelay) = (0, 0) kptr 116
01-02 08:19:18.621 833 3258 E mm-camera: <STATS_AEC ><ERROR> 2096: aec_process_calc_current_hist_metered_luma: error: out of range, exit
01-02 08:19:18.623 567 674 W SurfaceFlinger: EventThread: dropping event (7673796e) for connection 0x7fa0d77170
01-02 08:19:18.623 735 957 D audio_hw_primary: disable_audio_route: reset and update mixer path: low-latency-playback
01-02 08:19:18.627 735 957 D soundtrigger: audio_extn_sound_trigger_update_stream_status: uc_id 1 of type 0 for Event 2, with Raise=0
01-02 08:19:18.627 735 957 D hardware_info: hw_info_append_hw_type : device_name = speaker-db
01-02 08:19:18.627 735 957 D audio_hw_primary: disable_snd_device: snd_device(2: speaker-db)
01-02 08:19:18.627 735 957 D msm8974_platform: platform_can_split_snd_device: snd_device(2) num devices(0) new_snd_devices(0)
01-02 08:19:18.627 735 957 E audio_route: unable to find path 'speaker-db'

如果有哪位大神看到,希望能给出问题分析或者给指出一个思考这类问题的方向。非常感谢。
...全文
2183 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
Snapdragon Neural Processing Engine (SNPE) 是 Qualcomm 提供的一套完整的解决方案,旨在优化和加速神经网络模型在 Qualcomm 骁龙(Snapdragon)移动平台上的运行。SNPE 支持多种神经网络框架,如 TensorFlow、Caffe、ONNX 等,并提供了高效的推理引擎和工具链,帮助开发者在移动设备上实现高性能的人工智能应用。 Snapdragon Neural Processing Engine (SNPE) 是由高通公司(Qualcomm)开发的一套软件开发工具包,其目的在于为开发者提供一系列优化和加速神经网络模型在高通骁龙移动平台上的运行能力。随着人工智能技术在移动设备上的普及和重要性的日益增加,SNPE成为了推动移动AI应用发展的关键工具。 SNPE支持多种流行的深度学习框架,包括但不限于TensorFlow、Caffe以及ONNX(开放神经网络交换格式),这使得开发者能够利用他们已有的模型和知识,将这些模型转换并部署在骁龙处理器上。这样的支持为开发者提供极大的便利,因为它们不必从零开始构建模型,而是可以在现有的成果基础上进行优化和调整。 SNPE的核心组件之一是其高效的推理引擎,推理引擎是深度学习模型执行前向传播计算的部分,它负责处理输入数据并生成预测结果。在移动设备上运行复杂的神经网络模型,高效的推理引擎是至关重要的,因为它能够确保应用运行流畅且电池消耗合理。 此外,SNPE还提供了一系列工具链,这些工具链包括模型转换工具、调试工具和性能分析工具,它们帮助开发者在模型转换、调试和优化等阶段中更有效地工作。例如,模型转换工具可以将特定框架的模型转换为SNPE可以识别和运行的格式,而性能分析工具则允许开发者了解模型在特定硬件上的运行效率,进而作出相应的调整。

2,851

社区成员

发帖
与我相关
我的任务
社区描述
本论坛以AI、WoS 、XR、IoT、Auto、生成式AI等核心板块组成,为开发者提供便捷及高效的学习和交流平台。 高通开发者专区主页:https://qualcomm.csdn.net/
人工智能物联网机器学习 技术论坛(原bbs) 北京·东城区
社区管理员
  • csdnsqst0050
  • chipseeker
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧