diff options
-rw-r--r-- | SUPPORTED_OPS.md | 5 | ||||
-rw-r--r-- | ethosu/vela/tflite_supported_operators.py | 1 |
2 files changed, 6 insertions, 0 deletions
diff --git a/SUPPORTED_OPS.md b/SUPPORTED_OPS.md index fd5e478..665cb30 100644 --- a/SUPPORTED_OPS.md +++ b/SUPPORTED_OPS.md @@ -136,6 +136,11 @@ This is a list of constraints that the AVERAGE_POOL_2D operator must satisfy in - Stride values for both width and height must be integer types - IFM and OFM data types must match - Kernel filter values for both width and height must be integer types +- Strides must fulfil the following criteria: + - Stride h must be between 1 and 3 when ofm height is greater than 1 + - Stride w must be between 1 and 3 when ofm height is greater than 1 or + stride w must be divisible by 2 or 3 and ifm width must be divisible + by stride_w/2 or stride_w/3 - Stride width must be greater than or equal to 1. For stride width greater than 3, valid padding needs to be used. - Kernel filter values for both width and height must be in the range [1, 8] diff --git a/ethosu/vela/tflite_supported_operators.py b/ethosu/vela/tflite_supported_operators.py index 4500391..e5686f4 100644 --- a/ethosu/vela/tflite_supported_operators.py +++ b/ethosu/vela/tflite_supported_operators.py @@ -254,6 +254,7 @@ class TFLiteSupportedOperators: self.specific_constraints[op_type].append(TFLiteSupportedOperators.constraint_stride_range) # AVG pooling specific checks: for op_type in TFLiteSupportedOperators.avg_pooling_ops: + self.specific_constraints[op_type].append(TFLiteSupportedOperators.constraint_stride_width_no_upper_limit) self.specific_constraints[op_type].append(TFLiteSupportedOperators.constraint_stride_range_no_padding) self.specific_constraints[op_type].append(TFLiteSupportedOperators.constraint_filter_range) self.specific_constraints[op_type].append(TFLiteSupportedOperators.constraint_filter_height_range_valid_pad) |