This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TDA4VM: Segmentation Fault loading model with edge ai tidl

Part Number: TDA4VM

Hi all,

I am trying to load a tflite model, however it fails. The only message recieved is Segmentation Fault without further details(with different Debug Levels).

Following is the piece of code:

import tflite_runtime.interpreter as tflite

compile_options = {"tidl_tools_path": os.environ['TIDL_TOOLS_PATH'],
                   "tensor_bits":8,
                   "accuracy":1,
                   "debug_level":1, # also tested with debug level 3
                   "artifacts_folder": "/home/tda4/output"}

tidl_delegate = [tflite.load_delegate(os.path.join(os.environ['TIDL_TOOLS_PATH'], 'tidl_model_import_tflite.so'),
                    compile_options)]
interpreter = tflite.Interpreter(model_path="/home/tda4/abc/tfl/data/model.tflite", 
                                    experimental_delegates=tidl_delegate)

And the output is:

 ****** WARNING : Network not identified as Object Detection network : (1) Ignore if network is not Object Detection network (2) If network is Object Detection network, please specify "model_type":"OD" as part of OSRT compilation options******

Segmentation fault

Some more information related to why the Segmentation fault occurs would be helpful, but I am not sure how to get this.

I have tested other tflite models they seem to work.

Edit: Tested the same model with ONNX EP now, this writes out more things in log. For ex: Slice and Sub layer were not supported. I added them in the deny_list. Now I still get the Segmentation Fault with following log:

tidl_tools_path                                 = /home/root/tidl_tools 
artifacts_folder                                = /home/root/output 
tidl_tensor_bits                                = 8 
debug_level                                     = 1 
num_tidl_subgraphs                              = 16 
tidl_denylist                                   = Slice   Sub   
tidl_denylist_layer_name                        = 
tidl_denylist_layer_type                         = 
tidl_allowlist_layer_name                        = 
model_type                                      =  
tidl_calibration_accuracy_level                 = 7 
tidl_calibration_options:num_frames_calibration = 20 
tidl_calibration_options:bias_calibration_iterations = 50 
mixed_precision_factor = -1.000000 
model_group_id = 0 
power_of_2_quantization                         = 2 
enable_high_resolution_optimization             = 0 
pre_batchnorm_fold                              = 1 
add_data_convert_ops                          = 0 
output_feature_16bit_names_list                 =  
m_params_16bit_names_list                       =  
reserved_compile_constraints_flag               = 1601 
ti_internal_reserved_1                          = 

 ****** WARNING : Network not identified as Object Detection network : (1) Ignore if network is not Object Detection network (2) If network is Object Detection network, please specify "model_type":"OD" as part of OSRT compilation options******

Op type 'Sub'  added to unsupported nodes as specified in deny list 
Op t

The log does not seem to be complete though. 

Best

Ashay