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.3 | |
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.3')
-rw-r--r-- | 1.3/HalPolicy.cpp | 15 | ||||
-rw-r--r-- | 1.3/HalPolicy.hpp | 3 |
2 files changed, 13 insertions, 5 deletions
diff --git a/1.3/HalPolicy.cpp b/1.3/HalPolicy.cpp index 93337594..9a9f2ac0 100644 --- a/1.3/HalPolicy.cpp +++ b/1.3/HalPolicy.cpp @@ -98,7 +98,7 @@ bool HalPolicy::ConvertOperation(const Operation& operation, const Model& model, case V1_3::OperationType::MAXIMUM: return ConvertMaximum(operation, model, data); case V1_3::OperationType::MEAN: - return ConvertMean(operation, model, data); + return ConvertReduce(operation, model, data, ReduceOperation::Mean); case V1_3::OperationType::MINIMUM: return ConvertMinimum(operation, model, data); case V1_3::OperationType::MUL: @@ -121,6 +121,12 @@ bool HalPolicy::ConvertOperation(const Operation& operation, const Model& model, return ConvertQuantized16BitLstm(operation, model, data); case V1_3::OperationType::RANK: return ConvertRank(operation, model, data); + case V1_3::OperationType::REDUCE_MAX: + return ConvertReduce(operation, model, data, ReduceOperation::Max); + case V1_3::OperationType::REDUCE_MIN: + return ConvertReduce(operation, model, data, ReduceOperation::Min); + case V1_3::OperationType::REDUCE_SUM: + return ConvertReduce(operation, model, data, ReduceOperation::Sum); case V1_3::OperationType::RELU: return ConvertReLu(operation, model, data); case V1_3::OperationType::RELU1: @@ -359,10 +365,11 @@ bool HalPolicy::ConvertMaximum(const Operation& operation, const Model& model, C return ::ConvertMaximum<hal_1_3::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_3::HalPolicy::ConvertMean()"); - return ::ConvertMean<hal_1_3::HalPolicy>(operation, model, data); + ALOGV("hal_1_3::HalPolicy::ConvertReduce()"); + return ::ConvertReduce<hal_1_3::HalPolicy>(operation, model, data, reduceOperation); } bool HalPolicy::ConvertMinimum(const Operation& operation, const Model& model, ConversionData& data) diff --git a/1.3/HalPolicy.hpp b/1.3/HalPolicy.hpp index f82a5ef7..1337bf20 100644 --- a/1.3/HalPolicy.hpp +++ b/1.3/HalPolicy.hpp @@ -110,7 +110,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 reduceOperation); static bool ConvertMinimum(const Operation& operation, const Model& model, ConversionData& data); |