blob: 6a29439cc0f18e89c2586abde4e4b4ce8d463056 [file] [log] [blame]
Nattapat Chaimanowong1216b582018-11-23 15:33:41 +00001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5
6#include "RefStridedSliceWorkload.hpp"
Matteo Martincighe851b3d2019-05-28 14:31:20 +01007#include "RefWorkloadUtils.hpp"
Nattapat Chaimanowong1216b582018-11-23 15:33:41 +00008#include "StridedSlice.hpp"
9
Nattapat Chaimanowong1216b582018-11-23 15:33:41 +000010namespace armnn
11{
12
Matteo Martincighe851b3d2019-05-28 14:31:20 +010013RefStridedSliceWorkload::RefStridedSliceWorkload(const StridedSliceQueueDescriptor& descriptor,
14 const WorkloadInfo& info)
15 : BaseWorkload(descriptor, info)
16{}
17
18void RefStridedSliceWorkload::Execute() const
Nattapat Chaimanowong1216b582018-11-23 15:33:41 +000019{
Matteo Martincighe851b3d2019-05-28 14:31:20 +010020 ARMNN_SCOPED_PROFILING_EVENT(Compute::CpuRef, "RefStridedSliceWorkload_Execute");
Nattapat Chaimanowong1216b582018-11-23 15:33:41 +000021
Matteo Martincighe851b3d2019-05-28 14:31:20 +010022 const TensorInfo& inputInfo = GetTensorInfo(m_Data.m_Inputs[0]);
Nattapat Chaimanowong1216b582018-11-23 15:33:41 +000023 const TensorInfo& outputInfo = GetTensorInfo(m_Data.m_Outputs[0]);
24
Matteo Martincighe851b3d2019-05-28 14:31:20 +010025 DataType inputDataType = inputInfo.GetDataType();
26 DataType outputDataType = outputInfo.GetDataType();
Nattapat Chaimanowong1216b582018-11-23 15:33:41 +000027
Narumol Prangnawaratac2770a2020-04-01 16:51:23 +010028 ARMNN_ASSERT(inputDataType == outputDataType);
Jan Eilers8eb25602020-03-09 12:13:48 +000029 IgnoreUnused(outputDataType);
Matteo Martincighe851b3d2019-05-28 14:31:20 +010030
31 StridedSlice(inputInfo,
32 m_Data.m_Parameters,
33 m_Data.m_Inputs[0]->Map(),
34 m_Data.m_Outputs[0]->Map(),
35 GetDataTypeSize(inputDataType));
Nattapat Chaimanowong1216b582018-11-23 15:33:41 +000036}
37
Matteo Martincighe851b3d2019-05-28 14:31:20 +010038} // namespace armnn