Forums - CPU fallback forcing all layers to run on CPU

2 posts / 0 new
Last post
CPU fallback forcing all layers to run on CPU
vyom.mishra
Join Date: 24 Feb 20
Posts: 13
Posted: Tue, 2021-07-13 20:56

Dear Sir,

Application used: snpe-net-run and Native CPP standalone(snpe-sample)

SNPE version: 1.52

Target device: Qualcomm SA6155P

We had a model which was running on CPU and DSP successfully.

We added DSP non-supported layer to the same model to test the CPU_FALLBACK feature as per our requirement we were expecting the non-supported layer to run on CPU and rest model should run on DSP as it was running earlier.

Observation:

a) The whole model fallsback to CPU and all layers were running on CPU only.

logs for your reference:

Native Cpp Application:

root@sa6155:/data/local/tmp/vyom/cpu_fall_back_test_3# /data/local/tmp/vyom/cpu_fall_back_test_2/snpe-sample -b ITENSOR -d /data/local/tmp/vyom/cpu_fall_back_test_3/avod_part2_quant_bc_cropResize_bev2.dlc
  -i /data/local/tmp/vyom/cpu_fall_back_test_3/input_part2_cropResize_bev_1.txt  -o output -r dsp
SNPE Version: 1.52.0.2724
Selected runtime not present. Falling back to CPU.

Processing DNN Input:
        1) /data/local/tmp/vyom/cpu_fall_back_test_3/proposals_reshape_nms.raw
        2) bev_vgg_pyr_strided_slice.raw
        3) avod_roi_pooling_Reshape.raw
Finished processing inputs for current inference

 

snpe-net-run Application logs:

root@sa6155:/data/local/tmp/vyom/cpu_fall_back_test_3# snpe-net-run --input_list /data/local/tmp/vyom/cpu_fall_back_test_3/input_part2_cropResize_bev.txt  --container /data/local/tmp/vyom/cpu_fall_back_te

st_3/avod_part2_quant_bc_cropResize_bev2.dlc  --output_dir output --use_dsp --enable_cpu_fallback

The selected runtime is not available on this platform. Continue anyway to observe the failure at network creation time.
-------------------------------------------------------------------------------
Model String: N/A
SNPE v1.52.0.2724
-------------------------------------------------------------------------------
Processing DNN input(s):
/data/local/tmp/vyom/cpu_fall_back_test_3/bev_vgg_pyr_strided_slice.raw
Processing DNN input(s):
/data/local/tmp/vyom/cpu_fall_back_test_3/avod_roi_pooling_Reshape.raw
Processing DNN input(s):
/data/local/tmp/vyom/cpu_fall_back_test_3/proposals_reshape_nms.raw

 

 

 

Note: This application is Native Cpp SNPE standlaone where we have set the CPU fallback functionality in SNPEBuilder options. Same behaviour is observed with snpe-net-run also.

 

What could be the possible reason for this behaviour, how to resolve the same.

 

Thanks and Regards,

Vyom Mishra

  • Up0
  • Down0
ss.pandiri
Join Date: 29 May 18
Posts: 58
Posted: Tue, 2021-08-24 20:29

Hi,

Can you please try -- use-aip option. This seems to automatically distribute layers on supported runtimes. Please see the documentation here:

https://developer.qualcomm.com/sites/default/files/docs/snpe//aip_runtim...

Thanks,

Steven

  • Up0
  • Down0
or Register

Opinions expressed in the content posted here are the personal opinions of the original authors, and do not necessarily reflect those of Qualcomm Incorporated or its subsidiaries (“Qualcomm”). The content is provided for informational purposes only and is not meant to be an endorsement or representation by Qualcomm or any other party. This site may also provide links or references to non-Qualcomm sites and resources. Qualcomm makes no representations, warranties, or other commitments whatsoever about any non-Qualcomm sites or third-party resources that may be referenced, accessible from, or linked to this site.