diff options
author | Matthew Jackson <matthew.jackson@arm.com> | 2019-09-11 09:19:18 +0100 |
---|---|---|
committer | Matthew Jackson <matthew.jackson@arm.com> | 2019-09-11 10:49:25 +0000 |
commit | 252df3a8b6bbf70a21f81d1bf239d08f8b09086f (patch) | |
tree | 6e6eaf6814d71ca61c9bd700d4c1757ff671c292 /src/backends/reference/workloads | |
parent | 0cfcf235c4bcd2ae570eea8bc2677f471281b8e6 (diff) | |
download | armnn-252df3a8b6bbf70a21f81d1bf239d08f8b09086f.tar.gz |
IVGCVSW-3845 Add Reference FP16 support for required layers
* Working on layers required by FSRCNN, FCRN and DeepSpeaker
* Updates RefLayerSupport and RefWorkloadFactory methods
* Adds RefPadFloat16Workload
* Tested by successful execution of these networks on Reference FP16 backend
Signed-off-by: Matthew Jackson <matthew.jackson@arm.com>
Change-Id: I4817dca0a89bba6902f0feffc494b27a26a0ab2d
Diffstat (limited to 'src/backends/reference/workloads')
-rw-r--r-- | src/backends/reference/workloads/Pad.cpp | 6 | ||||
-rw-r--r-- | src/backends/reference/workloads/RefPadWorkload.cpp | 1 | ||||
-rw-r--r-- | src/backends/reference/workloads/RefPadWorkload.hpp | 5 |
3 files changed, 10 insertions, 2 deletions
diff --git a/src/backends/reference/workloads/Pad.cpp b/src/backends/reference/workloads/Pad.cpp index 5773cac6a8..42291b8661 100644 --- a/src/backends/reference/workloads/Pad.cpp +++ b/src/backends/reference/workloads/Pad.cpp @@ -158,6 +158,12 @@ template void Pad<float>(const TensorInfo& inputInfo, const float* inputData, float* outData, const float padValue); +template void Pad<Half>(const TensorInfo& inputInfo, + const TensorInfo& outputInfo, + std::vector<std::pair<unsigned int, unsigned int>> m_PadList, + const Half* inputData, + Half* outData, + const float padValue); template void Pad<uint8_t>(const TensorInfo& inputInfo, const TensorInfo& outputInfo, std::vector<std::pair<unsigned int, unsigned int>> m_PadList, diff --git a/src/backends/reference/workloads/RefPadWorkload.cpp b/src/backends/reference/workloads/RefPadWorkload.cpp index 5e59d83dc9..c4b9daeb4c 100644 --- a/src/backends/reference/workloads/RefPadWorkload.cpp +++ b/src/backends/reference/workloads/RefPadWorkload.cpp @@ -34,6 +34,7 @@ void RefPadWorkload<DataType>::Execute() const } template class RefPadWorkload<DataType::Float32>; +template class RefPadWorkload<DataType::Float16>; template class RefPadWorkload<DataType::QuantisedAsymm8>; template class RefPadWorkload<DataType::QuantisedSymm16>; diff --git a/src/backends/reference/workloads/RefPadWorkload.hpp b/src/backends/reference/workloads/RefPadWorkload.hpp index b1de53e930..d1521f4f8d 100644 --- a/src/backends/reference/workloads/RefPadWorkload.hpp +++ b/src/backends/reference/workloads/RefPadWorkload.hpp @@ -31,7 +31,8 @@ public: }; using RefPadFloat32Workload = RefPadWorkload<DataType::Float32>; -using RefPadQAsymm8Workload = RefPadWorkload<DataType::QuantisedAsymm8>; -using RefPadQSymm16Workload = RefPadWorkload<DataType::QuantisedSymm16>; +using RefPadFloat16Workload = RefPadWorkload<DataType::Float16>; +using RefPadQAsymm8Workload = RefPadWorkload<DataType::QuantisedAsymm8>; +using RefPadQSymm16Workload = RefPadWorkload<DataType::QuantisedSymm16>; } //namespace armnn |