qnn_executor_runner - mismatch in the skel files ?
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 5k
- Forks
- 1.2k
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 581
Description
hi,
im testing qnn_executor_runner on s25 ultra,
a Snapdragon 8 Gen 4 processor.
it seems qnn backend choses libQnnHtpV79Skel.so as the backend
but these messages seem to point to some mismatch ? it tries to call hmx_v73_convf16 ?
i.e. shouldnt it call hmx_v79_convf16 ?
V b037a:4006: CDSP0:[R]: Process "/frpc/f05c4930 qnn_executor_ru" crashed in thread "nn_3e56a57b" due to TLBMISS RW occurrence
2025-11-25 16:48:18.994 2314-2320 adsprpc cdsprpcd V b037a:4006: CDSP0:[R]: Crashed Shared Object "./libQnnHtpV79Skel.so" load address : 0x01000000
2025-11-25 16:48:18.994 2314-2320 adsprpc cdsprpcd V b037a:4006: CDSP0:[R]: [<015E5C3C>] hmx_v73_convf16_NxN_stride1+0x3C53C: (./libQnnHtpV79Skel.so)
2025-11-25 16:48:18.994 2314-2320 adsprpc cdsprpcd V b037a:4006: CDSP0:[R]: [<015E5C38>] hmx_v73_convf16_NxN_stride1+0x3C538: (./libQnnHtpV79Skel.so)
2025-11-25 16:48:18.994 2314-2320 adsprpc cdsprpcd V b037a:4006: CDSP0:[R]: [<015E5D74>] hmx_v73_convf16_NxN_stride1+0x3C674: (./libQnnHtpV79Skel.so)
2025-11-25 16:48:18.994 2314-2320 adsprpc cdsprpcd V b037a:4006: CDSP0:[R]: [<01546168>] continue_execution_bkgrnd_thread+0xA8: (./libQnnHtpV79Skel.so)
2025-11-25 16:48:18.994 2314-2320 adsprpc cdsprpcd V b037a:4006: CDSP0:[R]: [<0120EC94>] _ZN5Graph18exec_bkgrnd_workerEP12HexagonNNEnvPS_N9GraphData8ListTypeEN4hnnx3OsSE+0xD4: (./libQnnHtpV79Skel.so)
2025-11-25 16:48:18.994 2314-2320 adsprpc cdsprpcd V b037a:4006: CDSP0:[R]: [<01219EA0>] _ZNK5Graph31ubwcd_get_corresponding_surfaceEPKv+0x9E0: (./libQnnHtpV79Skel.so)
and output from adb shell
#./qnn_executor_runner --model_path ./my_model_fp16.pte --input_list_path ./raw_list.txt
[INFO] [Qnn ExecuTorch]: Deserializing processed data using QnnContextCustomProtocol
[INFO] [Qnn ExecuTorch]: create QNN Logger with log_level 1
[INFO] [Qnn ExecuTorch]: Initialize Qnn backend parameters for Qnn executorch backend type 2
[INFO] [Qnn ExecuTorch]: Caching: Caching is in RESTORE MODE.
[INFO] [Qnn ExecuTorch]: QnnContextCustomProtocol expected magic number: 0x5678abcd but get: 0x2000000
[INFO] [Qnn ExecuTorch]: Running level=1 optimization.
I 00:00:00.150474 executorch:qnn_executor_runner.cpp:313] Method loaded.
E 00:00:00.156807 executorch:method.cpp:1274] Output 0 is memory planned, or is a constant. Cannot override the existing data pointer.
I 00:00:00.156838 executorch:qnn_executor_runner.cpp:373] ignoring error from set_output_data_ptr(): 0x2
E 00:00:00.157118 executorch:method.cpp:1274] Output 1 is memory planned, or is a constant. Cannot override the existing data pointer.
I 00:00:00.157144 executorch:qnn_executor_runner.cpp:373] ignoring error from set_output_data_ptr(): 0x2
E 00:00:00.158031 executorch:method.cpp:1274] Output 2 is memory planned, or is a constant. Cannot override the existing data pointer.
I 00:00:00.158057 executorch:qnn_executor_runner.cpp:373] ignoring error from set_output_data_ptr(): 0x2
I 00:00:00.158069 executorch:qnn_executor_runner.cpp:376] Inputs prepared.
I 00:00:00.158198 executorch:qnn_executor_runner.cpp:382] Number of inputs: 1
I 00:00:00.178327 executorch:qnn_executor_runner.cpp:490] Perform 0 inference for warming up
I 00:00:00.178343 executorch:qnn_executor_runner.cpp:496] Start inference (0)
[ERROR] [Qnn ExecuTorch]: QnnDsp DspTransport call failed, error 0x00000010
[ERROR] [Qnn ExecuTorch]: QnnDsp Error from rpc transport
[ERROR] [Qnn ExecuTorch]: QnnDsp Graph forward failed in execution with err 1003
[ERROR] [Qnn ExecuTorch]: qnn_graph_execute failed. Error 1003
E 00:00:00.192908 executorch:QnnExecuTorchBackend.cpp:176] Fail to execute graph
E 00:00:00.192912 executorch:method.cpp:1426] CALL_DELEGATE execute failed at instruction 0: 0x1
I 00:00:00.192924 executorch:qnn_executor_runner.cpp:514] 1 inference took 14.576000 ms, avg 14.576000 ms
F 00:00:00.192943 executorch:qnn_executor_runner.cpp:519] In function main(), assert failed (status == Error::Ok): Execution of method forward failed with status 0x1
Aborted
cc @cccclai @winskuo-quic @shewu-quic @haowhsu-quic @DannyYuyang-quic @cbilgin
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with qnn_executor_runner.cpp and reproduce the shown command on the Snapdragon 8 Gen 4 device, comparing the QNN transport error with the DSP crash trace. Determine whether libQnnHtpV79Skel.so calling hmx_v73_convf16 is expected, and document the cause and resolution of the failed inference.
Written by the indexing model from the issue text.
Assessment
- Domain
- machine-learning, mobile-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 28/100