aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTeresa Charlin <teresa.charlinreyes@arm.com>2021-05-07 13:46:23 +0100
committerNarumol Prangnawarat <narumol.prangnawarat@arm.com>2021-05-07 18:12:45 +0100
commit69703a558c3f09f40b6b8387f47ba7e09e118036 (patch)
treef251bdba810b91ff115bc1588986b2e228c991ca
parent95b930c940c47e2f9a783cf17c87449cab4633c5 (diff)
downloadarmnn-69703a558c3f09f40b6b8387f47ba7e09e118036.tar.gz
IVGCVSW-5987 Print Reduce Descriptor on dot graph
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: I565a510de0dabdc25d518698174cd61d796239f4
-rw-r--r--include/armnn/TypesUtils.hpp11
-rw-r--r--src/armnn/SerializeLayerParameters.cpp20
-rw-r--r--src/armnn/SerializeLayerParameters.hpp5
3 files changed, 36 insertions, 0 deletions
diff --git a/include/armnn/TypesUtils.hpp b/include/armnn/TypesUtils.hpp
index 1012fcfa22..1e1926ab76 100644
--- a/include/armnn/TypesUtils.hpp
+++ b/include/armnn/TypesUtils.hpp
@@ -123,6 +123,17 @@ constexpr char const* GetPaddingMethodAsCString(PaddingMethod method)
}
}
+constexpr char const* GetReduceOperationAsCString(ReduceOperation reduce_operation)
+{
+ switch (reduce_operation)
+ {
+ case ReduceOperation::Sum: return "Sum";
+ case ReduceOperation::Max: return "Max";
+ case ReduceOperation::Mean: return "Mean";
+ case ReduceOperation::Min: return "Min";
+ default: return "Unknown";
+ }
+}
constexpr unsigned int GetDataTypeSize(DataType dataType)
{
switch (dataType)
diff --git a/src/armnn/SerializeLayerParameters.cpp b/src/armnn/SerializeLayerParameters.cpp
index e4bf094b7c..b298e14ac3 100644
--- a/src/armnn/SerializeLayerParameters.cpp
+++ b/src/armnn/SerializeLayerParameters.cpp
@@ -135,6 +135,26 @@ void StringifyLayerParameters<Pooling2dDescriptor>::Serialize(ParameterStringify
fn("DataLayout", GetDataLayoutName(desc.m_DataLayout));
}
+void StringifyLayerParameters<ReduceDescriptor>::Serialize(ParameterStringifyFunction& fn, const ReduceDescriptor& desc)
+{
+ {
+ std::stringstream ss;
+ int count = 0;
+ for (auto&& var : desc.m_vAxis)
+ {
+ if (count > 0)
+ {
+ ss << ",";
+ }
+ ss << var;
+ ++count;
+ }
+ fn("Axis", ss.str());
+ }
+ fn("KeepDims", (desc.m_KeepDims ? "true" : "false"));
+ fn("ReduceOperation", GetReduceOperationAsCString(desc.m_ReduceOperation));
+}
+
void StringifyLayerParameters<SoftmaxDescriptor>::Serialize(ParameterStringifyFunction& fn,
const SoftmaxDescriptor& desc)
{
diff --git a/src/armnn/SerializeLayerParameters.hpp b/src/armnn/SerializeLayerParameters.hpp
index ae921c4b07..20228e38ed 100644
--- a/src/armnn/SerializeLayerParameters.hpp
+++ b/src/armnn/SerializeLayerParameters.hpp
@@ -60,6 +60,11 @@ template <> struct StringifyLayerParameters<Pooling2dDescriptor>
static void Serialize(ParameterStringifyFunction& fn, const Pooling2dDescriptor& desc);
};
+template <> struct StringifyLayerParameters<ReduceDescriptor>
+{
+ static void Serialize(ParameterStringifyFunction& fn, const ReduceDescriptor& desc);
+};
+
template <> struct StringifyLayerParameters<SoftmaxDescriptor>
{
static void Serialize(ParameterStringifyFunction& fn, const SoftmaxDescriptor& desc);