Add nnapi delegates for reduce_xx ops (#3786)
author이춘석/동작제어Lab(SR)/Staff Engineer/삼성전자 <chunseok.lee@samsung.com>
Tue, 4 Dec 2018 05:21:31 +0000 (14:21 +0900)
committer박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 <saehie.park@samsung.com>
Tue, 4 Dec 2018 05:21:31 +0000 (14:21 +0900)
Add delegates for tflite::BuiltinOperator_SUM,
tflite::BuiltinOperator_REDUCE_MAX, and tflite::BuiltinOperator_REDUCE_MIN

Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
libs/support/tflite/src/nnapi_delegate.cpp

index 96d0053..88ae31a 100644 (file)
@@ -790,6 +790,30 @@ TfLiteStatus AddOpsAndParams(
             augmented_inputs.data(), static_cast<uint32_t>(node.outputs->size),
             reinterpret_cast<uint32_t*>(node.outputs->data)));
         continue;
+      case tflite::BuiltinOperator_SUM:
+        CHECK_NN(ANeuralNetworksModel_addOperationEx(
+            nn_model, ANEURALNETWORKS_TENSORFLOW_SUM_EX,
+            static_cast<uint32_t>(augmented_inputs.size()),
+            augmented_inputs.data(),
+            static_cast<uint32_t>(node.outputs->size),
+            reinterpret_cast<uint32_t*>(node.outputs->data)));
+        continue;
+      case tflite::BuiltinOperator_REDUCE_MAX:
+        CHECK_NN(ANeuralNetworksModel_addOperationEx(
+            nn_model, ANEURALNETWORKS_TENSORFLOW_MAX_EX,
+            static_cast<uint32_t>(augmented_inputs.size()),
+            augmented_inputs.data(),
+            static_cast<uint32_t>(node.outputs->size),
+            reinterpret_cast<uint32_t*>(node.outputs->data)));
+        continue;
+      case tflite::BuiltinOperator_REDUCE_MIN:
+        CHECK_NN(ANeuralNetworksModel_addOperationEx(
+            nn_model, ANEURALNETWORKS_REDUCE_MIN_EX,
+            static_cast<uint32_t>(augmented_inputs.size()),
+            augmented_inputs.data(),
+            static_cast<uint32_t>(node.outputs->size),
+            reinterpret_cast<uint32_t*>(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: