From 44179c372eea9f17c96cbf50ee383e57e14d70a6 Mon Sep 17 00:00:00 2001 From: Narumol Prangnawarat Date: Wed, 11 Mar 2020 14:51:27 +0000 Subject: IVGCVSW-4511 Add BFloat16 to RefLayerSupport and unit tests Signed-off-by: Narumol Prangnawarat Change-Id: Ifaae4d5aac468ba927b2c6a4bf31b8c8522aeb2e --- src/backends/reference/workloads/Pad.cpp | 7 +++++++ src/backends/reference/workloads/RefPadWorkload.cpp | 1 + src/backends/reference/workloads/RefPadWorkload.hpp | 1 + src/backends/reference/workloads/RefPermuteWorkload.cpp | 1 + src/backends/reference/workloads/RefPermuteWorkload.hpp | 1 + src/backends/reference/workloads/RefTransposeWorkload.cpp | 1 + src/backends/reference/workloads/RefTransposeWorkload.hpp | 1 + 7 files changed, 13 insertions(+) (limited to 'src/backends/reference/workloads') diff --git a/src/backends/reference/workloads/Pad.cpp b/src/backends/reference/workloads/Pad.cpp index 9fedb44f96..ffdd469609 100644 --- a/src/backends/reference/workloads/Pad.cpp +++ b/src/backends/reference/workloads/Pad.cpp @@ -152,6 +152,13 @@ void Pad(const TensorInfo& inputInfo, } } +template void Pad(const TensorInfo& inputInfo, + const TensorInfo& outputInfo, + std::vector> m_PadList, + const BFloat16* inputData, + BFloat16* outData, + const float padValue); + template void Pad(const TensorInfo& inputInfo, const TensorInfo& outputInfo, std::vector> m_PadList, diff --git a/src/backends/reference/workloads/RefPadWorkload.cpp b/src/backends/reference/workloads/RefPadWorkload.cpp index 356f6b1172..777682d70c 100644 --- a/src/backends/reference/workloads/RefPadWorkload.cpp +++ b/src/backends/reference/workloads/RefPadWorkload.cpp @@ -33,6 +33,7 @@ void RefPadWorkload::Execute() const Pad(inputInfo, outputInfo, m_Data.m_Parameters.m_PadList, inputData, outputData, m_Data.m_Parameters.m_PadValue); } +template class RefPadWorkload; template class RefPadWorkload; template class RefPadWorkload; template class RefPadWorkload; diff --git a/src/backends/reference/workloads/RefPadWorkload.hpp b/src/backends/reference/workloads/RefPadWorkload.hpp index 28fb55386e..5134ac8bff 100644 --- a/src/backends/reference/workloads/RefPadWorkload.hpp +++ b/src/backends/reference/workloads/RefPadWorkload.hpp @@ -30,6 +30,7 @@ public: void Execute() const override; }; +using RefPadBFloat16Workload = RefPadWorkload; using RefPadFloat32Workload = RefPadWorkload; using RefPadFloat16Workload = RefPadWorkload; using RefPadQAsymm8Workload = RefPadWorkload; diff --git a/src/backends/reference/workloads/RefPermuteWorkload.cpp b/src/backends/reference/workloads/RefPermuteWorkload.cpp index d0e1431ffd..5751ed80a3 100644 --- a/src/backends/reference/workloads/RefPermuteWorkload.cpp +++ b/src/backends/reference/workloads/RefPermuteWorkload.cpp @@ -28,6 +28,7 @@ void RefPermuteWorkload::Execute() const src->Map(), dst->Map(), sizeof(T)); } +template class RefPermuteWorkload; template class RefPermuteWorkload; template class RefPermuteWorkload; template class RefPermuteWorkload; diff --git a/src/backends/reference/workloads/RefPermuteWorkload.hpp b/src/backends/reference/workloads/RefPermuteWorkload.hpp index 00a33850aa..a8d308e47c 100644 --- a/src/backends/reference/workloads/RefPermuteWorkload.hpp +++ b/src/backends/reference/workloads/RefPermuteWorkload.hpp @@ -27,6 +27,7 @@ public: void Execute() const override; }; +using RefPermuteBFloat16Workload = RefPermuteWorkload; using RefPermuteFloat16Workload = RefPermuteWorkload; using RefPermuteFloat32Workload = RefPermuteWorkload; using RefPermuteQAsymm8Workload = RefPermuteWorkload; diff --git a/src/backends/reference/workloads/RefTransposeWorkload.cpp b/src/backends/reference/workloads/RefTransposeWorkload.cpp index 6bdfb2111d..242668b6b1 100644 --- a/src/backends/reference/workloads/RefTransposeWorkload.cpp +++ b/src/backends/reference/workloads/RefTransposeWorkload.cpp @@ -27,6 +27,7 @@ void RefTransposeWorkload::Execute() const armnnUtils::Transpose(GetTensorInfo(src).GetShape(), mappings, src->Map(), dst->Map(), sizeof(T)); } +template class RefTransposeWorkload; template class RefTransposeWorkload; template class RefTransposeWorkload; template class RefTransposeWorkload; diff --git a/src/backends/reference/workloads/RefTransposeWorkload.hpp b/src/backends/reference/workloads/RefTransposeWorkload.hpp index 4b1c3d303b..dcfe618b75 100644 --- a/src/backends/reference/workloads/RefTransposeWorkload.hpp +++ b/src/backends/reference/workloads/RefTransposeWorkload.hpp @@ -27,6 +27,7 @@ public: void Execute() const override; }; +using RefTransposeBFloat16Workload = RefTransposeWorkload; using RefTransposeFloat16Workload = RefTransposeWorkload; using RefTransposeFloat32Workload = RefTransposeWorkload; using RefTransposeQAsymm8Workload = RefTransposeWorkload; -- cgit v1.2.1