OS : QNX 7.1
Platform : Qualcomm Board
Target Hardware Accelerator : HTP (v73)
TVM build : From source
Description : I have built tvm runtime from source with following hexagon flags:
USE_HEXAGON : ON
USE_HEXAGON_SDK : Path_hexagon_sdk
USE_HEXAGON_RPC : ON
USE_HEXAGON_ARCH: v73
and cross-compiled tvm runtime for QNX 7.1 . The runtime was built without error .
I’ve also built hexagon skel file for v73 using hexagon-clang and hexagon-clang++ as C and CXX compilers.
On the board , I’m setting LD_LIBRARY_PATH and DSP_LIBRARY_PATH to point to runtime and skel files respectively.
During inference, I’m getting “Hexagon Device API is not enabled” error.
Does anybody know how to resolve this error?
@srkreddy1238
Probably @kparzysz can help on this.
@VarunGupta Could you specify some more details how you’re trying to run the inference. I’m assuming that you’re trying to use the android launcher. Just as a sanity check to see if build is working as expected, could you check whether you’re able to run any of the tests in test_hexagon
directory like perhaps this one?
Also if you could provide the exact error from logcat, that would give more info to help you out.
Actually I just noticed that you’ve mentioned QNX 7.1 platform. I don’t think QNX with hexagon is supported yet, so it’s probably not expected to work.
@sanirudh Thanks for your reply.
- I’m not using android launcher. I’m trying to run inference of NN on a Qualcomm Board which is running QNX 7.1 OS. Board has ARM CPU and v73 HTP (DSP)
- I’ve cross compiled tvm to build tvm_runtime.so for aarch64 CPU for QNX with following hexagon flags :
USE_HEXAGON=ON
USE_HEXAGON_SDK=path_to_hexagon_sdk
USE_HEXAGON_ARCH=v73
USE_HEXAGON_RPC = ON
- I’ve build tvm runtime for HTP/DSP (skel file) using following flags:
USE_C_COMPILER = hexagon-clang
USE_CXX_COMPILER=hexagon-clang++
USE_HEXAGON_SDK=path_to_hexagon_sdk
USE_HEXAGON=ON
USE_HEXAGON_ARCH=v73
Using above steps I’ve built tvm_runtime for DSP ( File has extension Qualcomm DSP6 )
- Since python doesn’t work on QNX, I have created a C++ executable for running NN on the board. I’m calling HTP using C++ API kDLHexagon.
Following is my error SS:
Right yes, as I edited my comment above, I missed that mention of QNX platform in your question above, sorry about that.
I don’t think hexagon with QNX is supported yet.
@sanirudh Thanks for your reply.
I’m no longer at Qualcomm and I don’t work on Hexagon anymore.