aboutsummaryrefslogtreecommitdiff
path: root/src/backends/reference/RefWorkloadFactory.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/backends/reference/RefWorkloadFactory.cpp')
-rw-r--r--src/backends/reference/RefWorkloadFactory.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/backends/reference/RefWorkloadFactory.cpp b/src/backends/reference/RefWorkloadFactory.cpp
index 7ae5b97dcf..d1189a6542 100644
--- a/src/backends/reference/RefWorkloadFactory.cpp
+++ b/src/backends/reference/RefWorkloadFactory.cpp
@@ -50,9 +50,9 @@ bool IsFloat16(const WorkloadInfo& info)
return IsDataType<DataType::Float16>(info);
}
-bool IsUint8(const WorkloadInfo& info)
+bool IsQSymm16(const WorkloadInfo& info)
{
- return IsDataType<DataType::QuantisedAsymm8>(info);
+ return IsDataType<DataType::QuantisedSymm16>(info);
}
RefWorkloadFactory::RefWorkloadFactory(const std::shared_ptr<RefMemoryManager>& memoryManager)
@@ -432,7 +432,11 @@ std::unique_ptr<IWorkload> RefWorkloadFactory::CreateGreater(const GreaterQueueD
std::unique_ptr<IWorkload> RefWorkloadFactory::CreateDebug(const DebugQueueDescriptor& descriptor,
const WorkloadInfo& info) const
{
- return MakeWorkload<RefDebugFloat32Workload, RefDebugUint8Workload>(descriptor, info);
+ if (IsQSymm16(info))
+ {
+ return std::make_unique<RefDebugQSymm16Workload>(descriptor, info);
+ }
+ return MakeWorkload<RefDebugFloat32Workload, RefDebugQAsymm8Workload>(descriptor, info);
}
std::unique_ptr<IWorkload> RefWorkloadFactory::CreateRsqrt(const RsqrtQueueDescriptor& descriptor,