diff options
author | Georgios Pinitas <georgios.pinitas@arm.com> | 2020-12-09 03:11:53 +0000 |
---|---|---|
committer | Georgios Pinitas <georgios.pinitas@arm.com> | 2020-12-11 14:39:09 +0000 |
commit | c53266e45f3c8c07dff88c61e5bfa01c6d3ba3f0 (patch) | |
tree | 14c21b14c776be9759ee33d66c818f7865072606 /arm_compute/graph/backends/FunctionHelpers.h | |
parent | 15bc8485ef463508838a549b7e8518bf05883155 (diff) | |
download | ComputeLibrary-c53266e45f3c8c07dff88c61e5bfa01c6d3ba3f0.tar.gz |
Remove (CL/NE)UpsampleLayer in favor to (NE/CL)Scale
Upsample functions and kernels can be replaced with the Scale as they
provide same functionality
Partially resolves: COMPMID-3996
Signed-off-by: Georgios Pinitas <georgios.pinitas@arm.com>
Change-Id: Ic2f9ba352c183aa87d69d551d5c172d0f22119e8
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/4679
Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'arm_compute/graph/backends/FunctionHelpers.h')
-rw-r--r-- | arm_compute/graph/backends/FunctionHelpers.h | 47 |
1 files changed, 1 insertions, 46 deletions
diff --git a/arm_compute/graph/backends/FunctionHelpers.h b/arm_compute/graph/backends/FunctionHelpers.h index 18fdb9f3bb..873957e6b7 100644 --- a/arm_compute/graph/backends/FunctionHelpers.h +++ b/arm_compute/graph/backends/FunctionHelpers.h @@ -1619,7 +1619,7 @@ std::unique_ptr<IFunction> create_resize_layer(ResizeLayerNode &node) // Create and configure function auto func = std::make_unique<ResizeLayerFunction>(); - func->configure(input, output, ScaleKernelInfo{ policy, BorderMode::CONSTANT }); + func->configure(input, output, ScaleKernelInfo{ policy, BorderMode::CONSTANT, PixelValue(), SamplingPolicy::CENTER, false, false }); // Log info ARM_COMPUTE_LOG_GRAPH_INFO("Instantiated " @@ -1840,51 +1840,6 @@ std::unique_ptr<IFunction> create_strided_slice_layer(StridedSliceLayerNode &nod return RETURN_UNIQUE_PTR(func); } - -/** Create a backend Upsample layer function - * - * @tparam UpsampleLayerFunction Backend Upsample function - * @tparam TargetInfo Target-specific information - * - * @param[in] node Node to create the backend function for - * @param[in] ctx Graph context - * - * @return Backend Upsample layer function - */ -template <typename UpsampleLayerFunction, typename TargetInfo> -std::unique_ptr<IFunction> create_upsample_layer(UpsampleLayerNode &node, GraphContext &ctx) -{ - ARM_COMPUTE_UNUSED(ctx); - validate_node<TargetInfo>(node, 1 /* expected inputs */, 1 /* expected outputs */); - - // Extract IO and info - typename TargetInfo::TensorType *input = get_backing_tensor<TargetInfo>(node.input(0)); - typename TargetInfo::TensorType *output = get_backing_tensor<TargetInfo>(node.output(0)); - const Size2D info = node.info(); - const InterpolationPolicy upsampling_policy = node.upsampling_policy(); - ARM_COMPUTE_ERROR_ON(upsampling_policy != InterpolationPolicy::NEAREST_NEIGHBOR); - ARM_COMPUTE_ERROR_ON(info.x() != 2 || info.y() != 2); - ARM_COMPUTE_ERROR_ON(input == nullptr); - ARM_COMPUTE_ERROR_ON(output == nullptr); - - // Create and configure function - auto func = std::make_unique<UpsampleLayerFunction>(); - func->configure(input, output, info, upsampling_policy); - - // Log info - ARM_COMPUTE_LOG_GRAPH_INFO("Instantiated " - << node.name() - << " Type: " << node.type() - << " Target: " << TargetInfo::TargetType - << " Data Type: " << input->info()->data_type() - << " Input shape: " << input->info()->tensor_shape() - << " Output shape: " << output->info()->tensor_shape() - << " Strides: " << info - << " Upsampling policy: " << upsampling_policy - << std::endl); - - return RETURN_UNIQUE_PTR(func); -} } // namespace detail } // namespace backends } // namespace graph |