edgetpu icon indicating copy to clipboard operation
edgetpu copied to clipboard

Yolox-nano tfl.strided_slice op not supported on DarwiNN

Open nlbutts opened this issue 11 months ago • 0 comments

Description

I'm trying to run a YOLOX-Nano model on the Coral USB device. When I run the edgetpu_compiler I get the following error messages:

Edge TPU Compiler version 16.0.384591198
Started a compilation timeout timer of 180 seconds.
loc("onnx_tf_prefix_/backbone/backbone/stem/Slice_21"): error: 'tfl.strided_slice' op is not supported on DarwiNN. See the operation detail:
	%9 = "tfl.strided_slice"(%7, %0, %2, %1) {begin_mask = 0 : i32, ellipsis_mask = 0 : i32, end_mask = 0 : i32, new_axis_mask = 0 : i32, shrink_axis_mask = 0 : i32} : (tensor<1x3x160x320x!quant.uniform<i8:f32, 1.000000e+00:-128>>, tensor<4xi32>, tensor<4xi32>, tensor<4xi32>) -> tensor<1x3x160x160x!quant.uniform<i8:f32, 1.000000e+00:-128>>
loc("onnx_tf_prefix_/backbone/backbone/stem/Slice_12"): error: 'tfl.strided_slice' op is not supported on DarwiNN. See the operation detail:
	%8 = "tfl.strided_slice"(%7, %3, %2, %1) {begin_mask = 0 : i32, ellipsis_mask = 0 : i32, end_mask = 0 : i32, new_axis_mask = 0 : i32, shrink_axis_mask = 0 : i32} : (tensor<1x3x160x320x!quant.uniform<i8:f32, 1.000000e+00:-128>>, tensor<4xi32>, tensor<4xi32>, tensor<4xi32>) -> tensor<1x3x160x160x!quant.uniform<i8:f32, 1.000000e+00:-128>>
loc("onnx_tf_prefix_/backbone/backbone/stem/Slice_4"): error: 'tfl.strided_slice' op is not supported on DarwiNN. See the operation detail:
	%12 = "tfl.strided_slice"(%11, %3, %2, %1) {begin_mask = 0 : i32, ellipsis_mask = 0 : i32, end_mask = 0 : i32, new_axis_mask = 0 : i32, shrink_axis_mask = 0 : i32} : (tensor<1x3x160x320x!quant.uniform<i8:f32, 1.000000e+00:-128>>, tensor<4xi32>, tensor<4xi32>, tensor<4xi32>) -> tensor<1x3x160x160x!quant.uniform<i8:f32, 1.000000e+00:-128>>
loc("onnx_tf_prefix_/backbone/backbone/stem/Slice_5"): error: 'tfl.strided_slice' op is not supported on DarwiNN. See the operation detail:
	%13 = "tfl.strided_slice"(%11, %0, %2, %1) {begin_mask = 0 : i32, ellipsis_mask = 0 : i32, end_mask = 0 : i32, new_axis_mask = 0 : i32, shrink_axis_mask = 0 : i32} : (tensor<1x3x160x320x!quant.uniform<i8:f32, 1.000000e+00:-128>>, tensor<4xi32>, tensor<4xi32>, tensor<4xi32>) -> tensor<1x3x160x160x!quant.uniform<i8:f32, 1.000000e+00:-128>>
loc("main"): error: dwl-check-illegal-ops failed: found illegal ops in func main: tfl.strided_slice
ERROR: Restored original execution plan after delegate application failure.
Compilation failed: Internal error.
Compilation child process completed within timeout period.
Compilation failed! 

My question is did I convert the Pytorch model to tflite incorrectly or is the model architecture fundamentally not support on a Coral device.

Click to expand!

Issue Type

Support

Operating System

Ubuntu

Coral Device

USB Accelerator

Other Devices

No response

Programming Language

Python 3.8

Relevant Log Output

See above.

nlbutts avatar Mar 06 '24 13:03 nlbutts