diff options
author | Teresa Charlin <teresa.charlinreyes@arm.com> | 2021-02-11 21:00:47 +0000 |
---|---|---|
committer | TeresaARM <teresa.charlinreyes@arm.com> | 2021-02-24 11:19:28 +0000 |
commit | 89cbb3a914d76843630f3576108e309cf085ef80 (patch) | |
tree | 7263f45b229b1f51f9f7d4bfe8aa5d5ce08f5128 /1.2 | |
parent | 23ed7bfb9b401d353ab2108029b3a13d1645affe (diff) | |
download | android-nn-driver-89cbb3a914d76843630f3576108e309cf085ef80.tar.gz |
IVGCVSW-5131 Add support for REDUCE_SUM, REDUCE_MIN and REDUCE_MAX
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ib88544dd6adc3d6a0d2f4c0b395e05b89bc8ad3e
Diffstat (limited to '1.2')
-rw-r--r-- | 1.2/HalPolicy.cpp | 15 | ||||
-rw-r--r-- | 1.2/HalPolicy.hpp | 3 |
2 files changed, 13 insertions, 5 deletions
diff --git a/1.2/HalPolicy.cpp b/1.2/HalPolicy.cpp index 557b78cf..7d45688a 100644 --- a/1.2/HalPolicy.cpp +++ b/1.2/HalPolicy.cpp @@ -86,7 +86,7 @@ bool HalPolicy::ConvertOperation(const Operation& operation, const Model& model, case V1_2::OperationType::MAXIMUM: return ConvertMaximum(operation, model, data); case V1_2::OperationType::MEAN: - return ConvertMean(operation, model, data); + return ConvertReduce(operation, model, data, ReduceOperation::Mean); case V1_2::OperationType::MINIMUM: return ConvertMinimum(operation, model, data); case V1_2::OperationType::MUL: @@ -105,6 +105,12 @@ bool HalPolicy::ConvertOperation(const Operation& operation, const Model& model, return ConvertQuantize(operation, model, data); case V1_2::OperationType::QUANTIZED_16BIT_LSTM: return ConvertQuantized16BitLstm(operation, model, data); + case V1_2::OperationType::REDUCE_MAX: + return ConvertReduce(operation, model, data, ReduceOperation::Max); + case V1_2::OperationType::REDUCE_MIN: + return ConvertReduce(operation, model, data, ReduceOperation::Min); + case V1_2::OperationType::REDUCE_SUM: + return ConvertReduce(operation, model, data, ReduceOperation::Sum); case V1_2::OperationType::RELU: return ConvertReLu(operation, model, data); case V1_2::OperationType::RELU1: @@ -306,10 +312,11 @@ bool HalPolicy::ConvertMaximum(const Operation& operation, const Model& model, C return ::ConvertMaximum<hal_1_2::HalPolicy>(operation, model, data); } -bool HalPolicy::ConvertMean(const Operation& operation, const Model& model, ConversionData& data) +bool HalPolicy::ConvertReduce(const Operation& operation, const Model& model, ConversionData& data, + ReduceOperation reduceOperation) { - ALOGV("hal_1_2::HalPolicy::ConvertMean()"); - return ::ConvertMean<hal_1_2::HalPolicy>(operation, model, data); + ALOGV("hal_1_2::HalPolicy::ConvertReduce()"); + return ::ConvertReduce<hal_1_2::HalPolicy>(operation, model, data, reduceOperation); } bool HalPolicy::ConvertMinimum(const Operation& operation, const Model& model, ConversionData& data) diff --git a/1.2/HalPolicy.hpp b/1.2/HalPolicy.hpp index be02c22f..feb2ba20 100644 --- a/1.2/HalPolicy.hpp +++ b/1.2/HalPolicy.hpp @@ -98,7 +98,8 @@ private: static bool ConvertMaximum(const Operation& operation, const Model& model, ConversionData& data); - static bool ConvertMean(const Operation& operation, const Model& model, ConversionData& data); + static bool ConvertReduce(const Operation& operation, const Model& model, ConversionData& data, + ReduceOperation reduce_operation); static bool ConvertMinimum(const Operation& operation, const Model& model, ConversionData& data); |