aboutsummaryrefslogtreecommitdiff
path: root/src/backends/tosaReference
diff options
context:
space:
mode:
Diffstat (limited to 'src/backends/tosaReference')
-rw-r--r--src/backends/tosaReference/TosaRefLayerSupport.cpp13
-rw-r--r--src/backends/tosaReference/test/TosaRefEndToEndTests.cpp8
2 files changed, 21 insertions, 0 deletions
diff --git a/src/backends/tosaReference/TosaRefLayerSupport.cpp b/src/backends/tosaReference/TosaRefLayerSupport.cpp
index dac06676bf..38fd01b93c 100644
--- a/src/backends/tosaReference/TosaRefLayerSupport.cpp
+++ b/src/backends/tosaReference/TosaRefLayerSupport.cpp
@@ -73,6 +73,19 @@ bool TosaRefLayerSupport::IsLayerSupported(const LayerType& type,
}
break;
}
+ case LayerType::DepthwiseConvolution2d:
+ {
+ inputInfos.push_back(&infos[0]); // input
+ outputInfos.push_back(&infos[1]); // output
+ inputInfos.push_back(&infos[2]); // weights
+
+ auto conv2dDesc = PolymorphicDowncast<const DepthwiseConvolution2dDescriptor*>(&descriptor);
+ if(conv2dDesc->m_BiasEnabled)
+ {
+ inputInfos.push_back(&infos[3]); // bias
+ }
+ break;
+ }
case LayerType::ElementwiseUnary:
case LayerType::Pooling2d:
case LayerType::Quantize:
diff --git a/src/backends/tosaReference/test/TosaRefEndToEndTests.cpp b/src/backends/tosaReference/test/TosaRefEndToEndTests.cpp
index f86edd52f4..f5da79c04a 100644
--- a/src/backends/tosaReference/test/TosaRefEndToEndTests.cpp
+++ b/src/backends/tosaReference/test/TosaRefEndToEndTests.cpp
@@ -9,6 +9,7 @@
#include "backendsCommon/test/AdditionEndToEndTestImpl.hpp"
#include "backendsCommon/test/Convolution2dEndToEndTestImpl.hpp"
#include "backendsCommon/test/ConcatEndToEndTestImpl.hpp"
+#include "backendsCommon/test/DepthwiseConvolution2dEndToEndTests.hpp"
#include "backendsCommon/test/ElementwiseBinaryEndToEndTestImpl.hpp"
#include "backendsCommon/test/ElementwiseUnaryEndToEndTestImpl.hpp"
#include "backendsCommon/test/MultiplicationEndToEndTestImpl.hpp"
@@ -129,6 +130,13 @@ TEST_CASE("TosaRefConv2dWithoutBiasEndtoEndTestInt8")
armnn::DataType::Signed32>(tosaDefaultBackends, armnn::DataLayout::NHWC, false);
}
+// DepthwiseConv2d
+TEST_CASE("TosaRefDepthwiseConv2dEndtoEndTestInt8")
+{
+ DepthwiseConvolution2dEndToEnd<armnn::DataType::QSymmS8,
+ armnn::DataType::Signed32>(tosaDefaultBackends, armnn::DataLayout::NHWC);
+}
+
// Elementwise Binary
//Add
TEST_CASE("TosaRefAddEndtoEndTestInt32")