From 67604c42acfece947e06bda4476d98321f5c1734 Mon Sep 17 00:00:00 2001 From: =?utf8?q?=EC=9D=B4=EC=B6=98=EC=84=9D/=EB=8F=99=EC=9E=91=EC=A0=9C?= =?utf8?q?=EC=96=B4Lab=28SR=29/Staff=20Engineer/=EC=82=BC=EC=84=B1?= =?utf8?q?=EC=A0=84=EC=9E=90?= Date: Tue, 4 Dec 2018 14:21:31 +0900 Subject: [PATCH] Add nnapi delegates for reduce_xx ops (#3786) Add delegates for tflite::BuiltinOperator_SUM, tflite::BuiltinOperator_REDUCE_MAX, and tflite::BuiltinOperator_REDUCE_MIN Signed-off-by: Chunseok Lee --- libs/support/tflite/src/nnapi_delegate.cpp | 30 +++++++++++++++++++++++++++--- 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/libs/support/tflite/src/nnapi_delegate.cpp b/libs/support/tflite/src/nnapi_delegate.cpp index 96d0053..88ae31a 100644 --- a/libs/support/tflite/src/nnapi_delegate.cpp +++ b/libs/support/tflite/src/nnapi_delegate.cpp @@ -790,6 +790,30 @@ TfLiteStatus AddOpsAndParams( augmented_inputs.data(), static_cast(node.outputs->size), reinterpret_cast(node.outputs->data))); continue; + case tflite::BuiltinOperator_SUM: + CHECK_NN(ANeuralNetworksModel_addOperationEx( + nn_model, ANEURALNETWORKS_TENSORFLOW_SUM_EX, + static_cast(augmented_inputs.size()), + augmented_inputs.data(), + static_cast(node.outputs->size), + reinterpret_cast(node.outputs->data))); + continue; + case tflite::BuiltinOperator_REDUCE_MAX: + CHECK_NN(ANeuralNetworksModel_addOperationEx( + nn_model, ANEURALNETWORKS_TENSORFLOW_MAX_EX, + static_cast(augmented_inputs.size()), + augmented_inputs.data(), + static_cast(node.outputs->size), + reinterpret_cast(node.outputs->data))); + continue; + case tflite::BuiltinOperator_REDUCE_MIN: + CHECK_NN(ANeuralNetworksModel_addOperationEx( + nn_model, ANEURALNETWORKS_REDUCE_MIN_EX, + static_cast(augmented_inputs.size()), + augmented_inputs.data(), + static_cast(node.outputs->size), + reinterpret_cast(node.outputs->data))); + continue; #endif case tflite::BuiltinOperator_CONCAT_EMBEDDINGS: case tflite::BuiltinOperator_LSH_PROJECTION: @@ -837,9 +861,9 @@ TfLiteStatus AddOpsAndParams( case tflite::BuiltinOperator_SPARSE_TO_DENSE: //case tflite::BuiltinOperator_EQUAL: //case tflite::BuiltinOperator_NOT_EQUAL: - case tflite::BuiltinOperator_SUM: - case tflite::BuiltinOperator_REDUCE_MAX: - case tflite::BuiltinOperator_REDUCE_MIN: + //case tflite::BuiltinOperator_SUM: + //case tflite::BuiltinOperator_REDUCE_MAX: + //case tflite::BuiltinOperator_REDUCE_MIN: case tflite::BuiltinOperator_REDUCE_PROD: //case tflite::BuiltinOperator_SQRT: //case tflite::BuiltinOperator_RSQRT: -- 2.7.4