My environment:
- - Snapdragon SA8155P
- - snpe-1.56.2.3050
the command that fails:
snpe-platform-validator --runtime dsp
the output:
*******************************
PF_VALIDATOR: DEBUG: Calling PlatformValidator->setRuntime
PF_VALIDATOR: DEBUG: Calling PlatformValidator->RuntimeCheck
PF_VALIDATOR: DEBUG: Testing for the support of DSP runtime.
PF_VALIDATOR: DEBUG: UnsignedPD is supported.
PF_VALIDATOR: DEBUG: CPU side validation passed.
PF_VALIDATOR: DEBUG: starting calculator test
PF_VALIDATOR: DEBUG: Loading DSP stub: libcalculator.so
PF_VALIDATOR: DEBUG: Successfully loaded DSP library - 'libcalculator.so'. Setting up pointers.
PF_VALIDATOR: ERROR: -2 . Error while executing the sum function.
PF_VALIDATOR: ERROR: Please use testsig if using unsigned images.
PF_VALIDATOR: ERROR: Also make sure ADSP_LIBRARY_PATH points to directory containing skels.
Unit Test on the runtime DSP: Failed.
SNPE is NOT supported for runtime DSP on the device.
PF_VALIDATOR: DEBUG: Calling PlatformValidator->IsRuntimeAvailable
PF_VALIDATOR: DEBUG: CPU side validation passed.
PF_VALIDATOR: DEBUG: starting calculator test
PF_VALIDATOR: DEBUG: Loading DSP stub: libcalculator.so
PF_VALIDATOR: DEBUG: Successfully loaded DSP library - 'libcalculator.so'. Setting up pointers.
PF_VALIDATOR: ERROR: -2 . Error while executing the sum function.
PF_VALIDATOR: ERROR: Please use testsig if using unsigned images.
PF_VALIDATOR: ERROR: Also make sure ADSP_LIBRARY_PATH points to directory containing skels.
Runtime DSP Prerequisites: Absent.
*******************************
My environment variables on the device:
*******************************
android-idc:/ $ echo $SNPE_TARGET_ARCH
aarch64-android-clang6.0
android-idc:/ $ echo $LD_LIBRARY_PATH
/data/local/tmp/platformValidator/lib
android-idc:/ $ ls $LD_LIBRARY_PATH
libPlatformValidatorShared.so libcalculator.so libhta.so libsnpe_dsp_v65_domains_v2_skel.so
libSNPE.so libcalculator_htp.so libsnpe_dsp_domains_v2.so libsnpe_dsp_v66_domains_v2_skel.so
libc++_shared.so libcalculator_skel.so libsnpe_dsp_domains_v3.so libsnpe_dsp_v68_domains_v3_skel.so
android-idc:/ $ echo $ADSP_LIBRARY_PATH
/data/local/tmp/platformValidator/lib;/system/lib/rfsa/adsp;/system/vendor/lib/rfsa/adsp;/dsp
android-idc:/ $ ls /data/local/tmp/platformValidator/lib
libPlatformValidatorShared.so libcalculator.so libhta.so libsnpe_dsp_v65_domains_v2_skel.so
libSNPE.so libcalculator_htp.so libsnpe_dsp_domains_v2.so libsnpe_dsp_v66_domains_v2_skel.so
libc++_shared.so libcalculator_skel.so libsnpe_dsp_domains_v3.so libsnpe_dsp_v68_domains_v3_skel.so
android-idc:/ $ ls /system/lib/rfsa/adsp
ls: /system/lib/rfsa/adsp: No such file or directory
android-idc:/ $ ls /system/vendor/lib/rfsa/adsp
capi_v2_asrc.so capi_v2_fnb.so capi_v2_sumx.so libdsp_streamer_add_constant.so libhexagon_nn_skel.so
capi_v2_avc.so capi_v2_loud.so capi_v2_synth.so libdsp_streamer_binning.so sec_module.so.1
capi_v2_bmt.so capi_v2_peq.so icc_module.so.1 libdsp_streamer_skel.so tests
android-idc:/ $ ls /dsp
ls: /dsp: Permission denied
*******************************
One can see that:
- - `/dsp` is empty, but is part of `$ADSP_LIBRARY_PATH`
- - `/system/lib/rfsa` does not exist, but is part of `$ADSP_LIBRARY_PATH`
- - multiple `skel.so` are in `$LD_LIBRARY_PATH` and in `$ADSP_LIBRARY_PATH`
What I have already tried:
- I also observed that if `$ADSP_LIBRARY_PATH` is not set, I got the same error.
- Following docs/snpe/dsp_runtime.html, I also tried with `/usr/lib/rfsa`, but it does not exist.
- I could find similar issues on the forum. For instance "SNPE cannot work with DSP on SA8155P". But it uses an older version of `snpe`. And I do not have any `install_adsp_ps.py`.
- In parallel, I have tried the benchmark tool. One of the runtimes was DSP (`"Runtimes":["GPU", "CPU", "DSP"]` in the config) and results seems plausible. That is why I cannot understand why the platform-validator does not work for DSP.
Dear customer,
Please don't try to use the SNPE version lager than 1.51. The SA8155P was developed for Auto. You can convert and work under 1.51.
BR.
Wei
Hi,
I tried below command on Qualcomm Robotics RB5 Development Kit with snpe-1.58.0.3160
snpe-platform-validator --runtime dsp
I followed below steps
1. Download and push snpe sdk to RB5 using below command
adb push snpe-1.58.0_3160.zip /data
2. Unzip snpe zip file using below command on RB5 device
unzip -X snpe-1.58.0_3160.zip
3. In RB5 device run below commands to run snpe-platform-validator
cd /data/snpe-1.58.0.3160/bin/aarch64-ubuntu-gcc7.5
./snpe-platform-validator --runtime dsp
I got error like PF_VALIDATOR: ERROR: Also make sure ADSP_LIBRARY_PATH points to directory containing skels.
Unit Test on the runtime DSP: Failed.
Then i set the path for ADSP_LIBRARY_PATH and LD_LIBRARY_PATH using below command
export LD_LIBRARY_PATH=/data/snpe-1.58.0.3160/lib/aarch64-ubuntu-gcc7.5
export ADSP_LIBRARY_PATH=/data/snpe-1.58.0.3160/lib/dsp
after setting above paths it worked fine.*/ */ */ */ */ */ */
Thank you Wei!
Indeed, downgrading SNPE to version 1.50.0.2622 or snpe-1.51.0.2663 made it work :)
Dear customer,
Welcome.
We're appreciate to raise more issues or give us more feedback if you have any confusion while used NN engine.
BR.
Wei
Could you provide a link to snpe version 1.51? I see the minimum sdk version is 2.10 in https://qpm.qualcomm.com/#/main/tools/details/qualcomm_neural_processing...