aboutsummaryrefslogtreecommitdiff
path: root/src/backends/backendsCommon/WorkloadData.cpp
diff options
context:
space:
mode:
authorRuomei Yan <ruomei.yan@arm.com>2019-05-28 16:48:20 +0100
committerRuomei Yan <ruomei.yan@arm.com>2019-05-30 15:45:40 +0100
commit25339c31a829111fce691311cb84100e8591f5da (patch)
tree9d79436f67f4570e4e4d1c52516de7f3df6eb7e0 /src/backends/backendsCommon/WorkloadData.cpp
parentedb8b2ec42624ec27c37bc1b3d345ef0c97c024c (diff)
downloadarmnn-25339c31a829111fce691311cb84100e8591f5da.tar.gz
IVGCVSW-3159 Support QSymm16 for Splitter workloads
Change-Id: I9af5d2d8ade97b9ecd2e6fbf13db9fa3bb622ed8 Signed-off-by: Ruomei Yan <ruomei.yan@arm.com>
Diffstat (limited to 'src/backends/backendsCommon/WorkloadData.cpp')
-rw-r--r--src/backends/backendsCommon/WorkloadData.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/backends/backendsCommon/WorkloadData.cpp b/src/backends/backendsCommon/WorkloadData.cpp
index e8e10d972a..c94fa25ac2 100644
--- a/src/backends/backendsCommon/WorkloadData.cpp
+++ b/src/backends/backendsCommon/WorkloadData.cpp
@@ -350,6 +350,27 @@ void SplitterQueueDescriptor::Validate(const WorkloadInfo& workloadInfo) const
{
ValidateNumInputs(workloadInfo, "SplitterQueueDescriptor", 1);
+ // Check the supported data types
+ std::vector<DataType> supportedTypes =
+ {
+ DataType::Float32,
+ DataType::Float16,
+ DataType::Boolean,
+ DataType::Signed32,
+ DataType::QuantisedAsymm8,
+ DataType::QuantisedSymm16
+ };
+
+ for (unsigned long i = 0; i < workloadInfo.m_OutputTensorInfos.size(); ++i)
+ {
+ ValidateDataTypes(workloadInfo.m_OutputTensorInfos[i],
+ supportedTypes,
+ "SplitterQueueDescriptor");
+ }
+ ValidateDataTypes(workloadInfo.m_OutputTensorInfos[0],
+ {workloadInfo.m_InputTensorInfos[0].GetDataType()},
+ "SplitterQueueDescriptor");
+
if (workloadInfo.m_OutputTensorInfos.size() <= 0)
{
throw InvalidArgumentException("SplitterQueueDescriptor: At least one output needs to be provided.");