From d2d917d1305e401b2b584698c216e9f5a966c743 Mon Sep 17 00:00:00 2001 From: Narumol Prangnawarat Date: Thu, 9 Jan 2020 10:16:39 +0000 Subject: Add Signed32 to debug layer Signed-off-by: Narumol Prangnawarat Change-Id: Iedfc196bfd18e8280e99a06db68df9c15c8ea835 --- src/backends/reference/RefLayerSupport.cpp | 5 +++-- src/backends/reference/RefWorkloadFactory.cpp | 4 ++++ src/backends/reference/workloads/Debug.cpp | 6 ++++++ src/backends/reference/workloads/RefDebugWorkload.cpp | 1 + src/backends/reference/workloads/RefDebugWorkload.hpp | 1 + 5 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/backends/reference/RefLayerSupport.cpp b/src/backends/reference/RefLayerSupport.cpp index 4767aa0b3b..26a61d45d5 100644 --- a/src/backends/reference/RefLayerSupport.cpp +++ b/src/backends/reference/RefLayerSupport.cpp @@ -496,12 +496,13 @@ bool RefLayerSupport::IsDebugSupported(const TensorInfo& input, { bool supported = true; - std::array supportedTypes = + std::array supportedTypes = { DataType::Float16, DataType::Float32, DataType::QAsymmU8, - DataType::QSymmS16 + DataType::QSymmS16, + DataType::Signed32 }; supported &= CheckSupportRule(TypeAnyOf(input, supportedTypes), reasonIfUnsupported, diff --git a/src/backends/reference/RefWorkloadFactory.cpp b/src/backends/reference/RefWorkloadFactory.cpp index b3a0c859fb..2db47d35c2 100644 --- a/src/backends/reference/RefWorkloadFactory.cpp +++ b/src/backends/reference/RefWorkloadFactory.cpp @@ -181,6 +181,10 @@ std::unique_ptr RefWorkloadFactory::CreateDebug(const DebugQueueDescr { return std::make_unique(descriptor, info); } + if (IsDataType(info)) + { + return std::make_unique(descriptor, info); + } return MakeWorkload(descriptor, info); } diff --git a/src/backends/reference/workloads/Debug.cpp b/src/backends/reference/workloads/Debug.cpp index b7d0911ef3..0f192f3ab3 100644 --- a/src/backends/reference/workloads/Debug.cpp +++ b/src/backends/reference/workloads/Debug.cpp @@ -112,4 +112,10 @@ template void Debug(const TensorInfo& inputInfo, const std::string& layerName, unsigned int slotIndex); +template void Debug(const TensorInfo& inputInfo, + const int32_t* inputData, + LayerGuid guid, + const std::string& layerName, + unsigned int slotIndex); + } // namespace armnn diff --git a/src/backends/reference/workloads/RefDebugWorkload.cpp b/src/backends/reference/workloads/RefDebugWorkload.cpp index 9572f9a2a5..59b836da09 100644 --- a/src/backends/reference/workloads/RefDebugWorkload.cpp +++ b/src/backends/reference/workloads/RefDebugWorkload.cpp @@ -48,5 +48,6 @@ template class RefDebugWorkload; template class RefDebugWorkload; template class RefDebugWorkload; template class RefDebugWorkload; +template class RefDebugWorkload; } // namespace armnn diff --git a/src/backends/reference/workloads/RefDebugWorkload.hpp b/src/backends/reference/workloads/RefDebugWorkload.hpp index fc154e9457..58e4464b00 100644 --- a/src/backends/reference/workloads/RefDebugWorkload.hpp +++ b/src/backends/reference/workloads/RefDebugWorkload.hpp @@ -41,5 +41,6 @@ using RefDebugFloat16Workload = RefDebugWorkload; using RefDebugFloat32Workload = RefDebugWorkload; using RefDebugQAsymm8Workload = RefDebugWorkload; using RefDebugQSymm16Workload = RefDebugWorkload; +using RefDebugSigned32Workload = RefDebugWorkload; } // namespace armnn -- cgit v1.2.1