aboutsummaryrefslogtreecommitdiff
path: root/src/backends/reference/RefWorkloadFactory.cpp
diff options
context:
space:
mode:
authorKeith Davis <keith.davis@arm.com>2020-02-19 10:08:33 +0000
committerJames Conroy <james.conroy@arm.com>2020-02-20 14:14:38 +0000
commita90573581bb2f63f229ddd61650163b9fc0fdd3e (patch)
tree80f272650985f9cd7ae684791dc54d6f68bfd1ca /src/backends/reference/RefWorkloadFactory.cpp
parentc02d4411b6bf9d755e25a1593c9fe16e7d93901e (diff)
downloadarmnn-a90573581bb2f63f229ddd61650163b9fc0fdd3e.tar.gz
IVGCVSW-4472 Yolo v3 ExecuteNetwork failing
* Add Debug workload for QAsymmS8/U8 * Change Dequantize tests to test AsymmS8 instead of SymmS8 * Fix incorrect supportedness within RefLayerSupport Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: Ie51f1e33c564d46c86bf0150b1addda3fc093d13
Diffstat (limited to 'src/backends/reference/RefWorkloadFactory.cpp')
-rw-r--r--src/backends/reference/RefWorkloadFactory.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/backends/reference/RefWorkloadFactory.cpp b/src/backends/reference/RefWorkloadFactory.cpp
index dadb456104..02dbbabf9f 100644
--- a/src/backends/reference/RefWorkloadFactory.cpp
+++ b/src/backends/reference/RefWorkloadFactory.cpp
@@ -65,6 +65,16 @@ bool IsQSymmS8(const WorkloadInfo& info)
return IsDataType<DataType::QSymmS8>(info);
}
+bool IsQAsymmS8(const WorkloadInfo& info)
+{
+ return IsDataType<DataType::QAsymmS8>(info);
+}
+
+bool IsQAsymmU8(const WorkloadInfo& info)
+{
+ return IsDataType<DataType::QAsymmU8>(info);
+}
+
RefWorkloadFactory::RefWorkloadFactory(const std::shared_ptr<RefMemoryManager>& memoryManager)
: m_MemoryManager(memoryManager)
{
@@ -200,6 +210,14 @@ std::unique_ptr<IWorkload> RefWorkloadFactory::CreateDebug(const DebugQueueDescr
{
return std::make_unique<RefDebugQSymmS8Workload>(descriptor, info);
}
+ if (IsQAsymmU8(info))
+ {
+ return std::make_unique<RefDebugQAsymmU8Workload>(descriptor, info);
+ }
+ if (IsQAsymmS8(info))
+ {
+ return std::make_unique<RefDebugQAsymmS8Workload>(descriptor, info);
+ }
if (IsSigned32(info))
{
return std::make_unique<RefDebugSigned32Workload>(descriptor, info);