aboutsummaryrefslogtreecommitdiff
path: root/ethosu/vela/tflite_mapping.py
diff options
context:
space:
mode:
authorerik.andersson@arm.com <erik.andersson@arm.com>2022-09-27 12:06:32 +0200
committertim.hall <tim.hall@arm.com>2022-10-03 14:22:47 +0000
commit61f05d92525447f62b9531b17297822b9232e8ab (patch)
tree09cf20904e84594d70977cf6bb67142ed874763b /ethosu/vela/tflite_mapping.py
parent6ef02301ce36a0d2b72171926376d62d42bd348a (diff)
downloadethos-u-vela-61f05d92525447f62b9531b17297822b9232e8ab.tar.gz
MLBEDSW-6955: Update to TensorFlow 2.10
- Updated to TensorFlow 2.10 and FlatBuffers 2.0.7 - Changed absolute to relative imports in the auto-generated code - Updated Vela's TFLite writer to support FlatBuffer builder's internal number of elements count - Removed use of deprecated numElems argument to FlatBuffer builder's EndVector() Signed-off-by: erik.andersson@arm.com <erik.andersson@arm.com> Signed-off-by: Tim Hall <tim.hall@arm.com> Change-Id: If447778134db81ae0ac374c7397e1140082372fd
Diffstat (limited to 'ethosu/vela/tflite_mapping.py')
-rw-r--r--ethosu/vela/tflite_mapping.py33
1 files changed, 30 insertions, 3 deletions
diff --git a/ethosu/vela/tflite_mapping.py b/ethosu/vela/tflite_mapping.py
index 3ccedc73..4e8507d0 100644
--- a/ethosu/vela/tflite_mapping.py
+++ b/ethosu/vela/tflite_mapping.py
@@ -32,6 +32,7 @@ from .tflite import AddOptions
from .tflite import ArgMaxOptions
from .tflite import ArgMinOptions
from .tflite import AssignVariableOptions
+from .tflite import ATan2Options
from .tflite import BatchMatMulOptions
from .tflite import BatchToSpaceNDOptions
from .tflite import BidirectionalSequenceLSTMOptions
@@ -118,6 +119,7 @@ from .tflite import SelectOptions
from .tflite import SelectV2Options
from .tflite import SequenceRNNOptions
from .tflite import ShapeOptions
+from .tflite import SignOptions
from .tflite import SkipGramOptions
from .tflite import SliceOptions
from .tflite import SoftmaxOptions
@@ -139,7 +141,10 @@ from .tflite import TransposeOptions
from .tflite import UnidirectionalSequenceLSTMOptions
from .tflite import UniqueOptions
from .tflite import UnpackOptions
+from .tflite import UnsortedSegmentMaxOptions
+from .tflite import UnsortedSegmentMinOptions
from .tflite import UnsortedSegmentProdOptions
+from .tflite import UnsortedSegmentSumOptions
from .tflite import VarHandleOptions
from .tflite import WhereOptions
from .tflite import WhileOptions
@@ -323,6 +328,11 @@ builtin_options_map = {
BuiltinOptions.DynamicUpdateSliceOptions: DynamicUpdateSliceOptions.DynamicUpdateSliceOptions,
BuiltinOptions.GeluOptions: GeluOptions.GeluOptions,
BuiltinOptions.UnsortedSegmentProdOptions: UnsortedSegmentProdOptions.UnsortedSegmentProdOptions,
+ BuiltinOptions.UnsortedSegmentMaxOptions: UnsortedSegmentMaxOptions.UnsortedSegmentMaxOptions,
+ BuiltinOptions.UnsortedSegmentMinOptions: UnsortedSegmentMinOptions.UnsortedSegmentMinOptions,
+ BuiltinOptions.UnsortedSegmentSumOptions: UnsortedSegmentSumOptions.UnsortedSegmentSumOptions,
+ BuiltinOptions.ATan2Options: ATan2Options.ATan2Options,
+ BuiltinOptions.SignOptions: SignOptions.SignOptions,
}
@@ -369,14 +379,14 @@ def write_byte_vector(builder, v):
builder.StartVector(1, len(v), 1)
for e in v[::-1]:
builder.PrependByte(e)
- return builder.EndVector(len(v))
+ return builder.EndVector()
def write_int_vector(builder, v):
builder.StartVector(4, len(v), 4)
for e in v[::-1]:
builder.PrependInt32(e)
- return builder.EndVector(len(v))
+ return builder.EndVector()
class OptionsSerializer:
@@ -519,6 +529,7 @@ builtin_operator_map = {
),
TFLITE_IFM_INDICES,
),
+ BuiltinOperator.ATAN2: (Op.Atan2, OptionsSerializer("ATan2Options", ()), TFLITE_IFM_IFM2_INDICES),
BuiltinOperator.CONCATENATION: (
Op.ConcatTFLite,
OptionsSerializer("ConcatenationOptions", ("axis", fused_act)),
@@ -754,6 +765,7 @@ builtin_operator_map = {
OptionsSerializer("TransposeConvOptions", (padding, "stride_h", "stride_w")),
TFLITE_CONV2D_BACKPROP_INDICES,
),
+ BuiltinOperator.SIGN: (Op.Sign, OptionsSerializer("SignOptions"), TFLITE_IFM_INDICES),
BuiltinOperator.SPARSE_TO_DENSE: (
Op.SparseToDense,
OptionsSerializer("SparseToDenseOptions", ("validate_indices",)),
@@ -970,7 +982,22 @@ builtin_operator_map = {
),
BuiltinOperator.UNSORTED_SEGMENT_PROD: (
Op.UnsortedSegmentProd,
- OptionsSerializer("UnsortedSegmentProdOptions", ("numsegments",)),
+ OptionsSerializer("UnsortedSegmentProdOptions"),
+ TFLITE_NO_INDICES,
+ ),
+ BuiltinOperator.UNSORTED_SEGMENT_MAX: (
+ Op.UnsortedSegmentMax,
+ OptionsSerializer("UnsortedSegmentMaxOptions"),
+ TFLITE_NO_INDICES,
+ ),
+ BuiltinOperator.UNSORTED_SEGMENT_MIN: (
+ Op.UnsortedSegmentMin,
+ OptionsSerializer("UnsortedSegmentMinOptions"),
+ TFLITE_NO_INDICES,
+ ),
+ BuiltinOperator.UNSORTED_SEGMENT_SUM: (
+ Op.UnsortedSegmentSum,
+ OptionsSerializer("UnsortedSegmentSumOptions"),
TFLITE_NO_INDICES,
),
BuiltinOperator.CUSTOM: (Op.Custom, CustomOptionsSerializer(), TFLITE_NO_INDICES),