16 using namespace armcomputetensorutils;
27 input.info()->set_data_layout(aclDataLayout);
34 output.info()->set_data_layout(aclDataLayout);
36 m_Layer.configure(&input, blockWidth, blockHeight, &output);
49 const arm_compute::TensorInfo aclInputInfo = BuildArmComputeTensorInfo(input, dataLayout);
52 int32_t blockHeight = boost::numeric_cast<int32_t>(desc.
m_BlockShape[0]);
53 int32_t blockWidth = boost::numeric_cast<int32_t>(desc.
m_BlockShape[1]);
55 const arm_compute::TensorInfo aclOutputInfo = BuildArmComputeTensorInfo(output, dataLayout);
57 const arm_compute::Status aclStatus = arm_compute::CLBatchToSpaceLayer::validate(&aclInputInfo,
void RunClFunction(arm_compute::IFunction &function, const CheckLocation &location)
A BatchToSpaceNdDescriptor for the BatchToSpaceNdLayer.
void Execute() const override
arm_compute::Status ClBatchToSpaceNdWorkloadValidate(const TensorInfo &input, const TensorInfo &output, const BatchToSpaceNdDescriptor &desc)
LayerDescriptor m_Parameters
DataLayout m_DataLayout
The data layout to be used (NCHW, NHWC).
ClBatchToSpaceNdWorkload(const BatchToSpaceNdQueueDescriptor &descriptor, const WorkloadInfo &info)
const BatchToSpaceNdQueueDescriptor m_Data
void ValidateInputsOutputs(const std::string &descName, unsigned int numExpectedIn, unsigned int numExpectedOut) const
std::vector< ITensorHandle * > m_Outputs
std::vector< ITensorHandle * > m_Inputs
#define ARMNN_SCOPED_PROFILING_EVENT_CL(name)
std::vector< unsigned int > m_BlockShape
Block shape values.