diff options
author | nikraj01 <nikhil.raj@arm.com> | 2019-05-30 17:29:32 +0100 |
---|---|---|
committer | Matteo Martincigh <matteo.martincigh@arm.com> | 2019-05-30 19:29:20 +0000 |
commit | 22f0f2bc3d8d8e460200ae353dcea42157d9ad39 (patch) | |
tree | 153a081f76b1a0b64bf2cabbaeb483b54c124b71 /src/backends/reference/workloads/SpaceToBatchNd.cpp | |
parent | 25339c31a829111fce691311cb84100e8591f5da (diff) | |
download | armnn-22f0f2bc3d8d8e460200ae353dcea42157d9ad39.tar.gz |
IVGCVSW-3194 Refactor SpaceToBatchNd workload
Change-Id: Iac2ded9b20c37299e3de51465dcbfb5a7bfc52d5
Signed-off-by: nikraj01 <nikhil.raj@arm.com>
Diffstat (limited to 'src/backends/reference/workloads/SpaceToBatchNd.cpp')
-rw-r--r-- | src/backends/reference/workloads/SpaceToBatchNd.cpp | 31 |
1 files changed, 15 insertions, 16 deletions
diff --git a/src/backends/reference/workloads/SpaceToBatchNd.cpp b/src/backends/reference/workloads/SpaceToBatchNd.cpp index 51e45a8c3f..0bc2396973 100644 --- a/src/backends/reference/workloads/SpaceToBatchNd.cpp +++ b/src/backends/reference/workloads/SpaceToBatchNd.cpp @@ -31,12 +31,11 @@ unsigned int GetOffset(const TensorShape& shape, } } -template<typename T> void SpaceToBatchNd(const TensorInfo& inputInfo, const TensorInfo& outputInfo, const SpaceToBatchNdDescriptor& params, - const T* inputData, - T* outputData) + Decoder<float>& inputData, + Encoder<float>& outputData) { DataLayoutIndexed dataLayout = params.m_DataLayout; @@ -83,7 +82,9 @@ void SpaceToBatchNd(const TensorInfo& inputInfo, outW, c, dataLayout); - outputData[outOffset] = 0; + outputData += outOffset; + outputData.Set(0); + outputData -= outOffset; } } else @@ -104,7 +105,11 @@ void SpaceToBatchNd(const TensorInfo& inputInfo, c, dataLayout); - outputData[outOffset] = inputData[inOffset]; + outputData += outOffset; + inputData += inOffset; + outputData.Set(inputData.Get()); + inputData -= inOffset; + outputData -= outOffset; } } } @@ -112,16 +117,10 @@ void SpaceToBatchNd(const TensorInfo& inputInfo, } } -template void SpaceToBatchNd<float>(const TensorInfo& inputInfo, - const TensorInfo& outputInfo, - const SpaceToBatchNdDescriptor& params, - const float* inputData, - float* outData); - -template void SpaceToBatchNd<uint8_t>(const TensorInfo& inputInfo, - const TensorInfo& outputInfo, - const SpaceToBatchNdDescriptor& params, - const uint8_t* inputData, - uint8_t* outData); +void SpaceToBatchNd(const TensorInfo& inputInfo, + const TensorInfo& outputInfo, + const SpaceToBatchNdDescriptor& params, + Decoder<float>& inputData, + Encoder<float>& outData); } //namespace armnn |