21 using namespace armcomputetensorutils;
27 const arm_compute::TensorInfo aclInputInfo = BuildArmComputeTensorInfo(input, descriptor.
m_DataLayout);
28 const arm_compute::TensorInfo aclOutputInfo = BuildArmComputeTensorInfo(output, descriptor.
m_DataLayout);
31 int32_t blockHeight = armnn::numeric_cast<int32_t>(descriptor.
m_BlockShape[0]);
32 int32_t blockWidth = armnn::numeric_cast<int32_t>(descriptor.
m_BlockShape[1]);
34 arm_compute::Size2D paddingLeftTop = BuildArmComputeSize2D(
36 arm_compute::Size2D paddingRightBottom = BuildArmComputeSize2D(
39 return arm_compute::CLSpaceToBatchLayer::validate(&aclInputInfo,
50 const arm_compute::CLCompileContext& clCompileContext)
61 arm_compute::ICLTensor& input =
62 armnn::PolymorphicPointerDowncast<IClTensorHandle>(
m_Data.
m_Inputs[0])->GetTensor();
63 arm_compute::ICLTensor& output =
64 armnn::PolymorphicPointerDowncast<IClTensorHandle>(
m_Data.
m_Outputs[0])->GetTensor();
70 arm_compute::Size2D paddingLeftTop = BuildArmComputeSize2D(
72 arm_compute::Size2D paddingRightBottom = BuildArmComputeSize2D(
76 input.info()->set_data_layout(aclDataLayout);
77 output.info()->set_data_layout(aclDataLayout);
81 m_SpaceToBatchLayer.configure(clCompileContext,