summaryrefslogtreecommitdiff
path: root/runtime/neurun/backend/cpu/kernel/MaxPoolLayer.cc
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/neurun/backend/cpu/kernel/MaxPoolLayer.cc')
-rw-r--r--runtime/neurun/backend/cpu/kernel/MaxPoolLayer.cc116
1 files changed, 0 insertions, 116 deletions
diff --git a/runtime/neurun/backend/cpu/kernel/MaxPoolLayer.cc b/runtime/neurun/backend/cpu/kernel/MaxPoolLayer.cc
deleted file mode 100644
index 095cd6d1d..000000000
--- a/runtime/neurun/backend/cpu/kernel/MaxPoolLayer.cc
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd. All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include "MaxPoolLayer.h"
-
-#include <cker/operation/MaxPool.h>
-
-#include "OperationUtils.h"
-
-namespace neurun
-{
-namespace backend
-{
-namespace cpu
-{
-namespace kernel
-{
-
-#define MAXPOOLING_PARAMETERS \
- nnfw::cker::PoolParams op_params; \
- op_params.stride_height = _strideHeight; \
- op_params.stride_width = _strideWidth; \
- op_params.filter_height = _kernelHeight; \
- op_params.filter_width = _kernelWidth; \
- op_params.padding_values.height = (int8_t)_paddingTop; \
- op_params.padding_values.width = (int8_t)_paddingLeft;
-
-MaxPoolLayer::MaxPoolLayer()
- : _inputData(), _outputData(), _inputDescr(), _outputDescr(), _paddingLeft(0), _paddingTop(0),
- _paddingRight(0), _paddingBottom(0), _strideWidth(0), _strideHeight(0), _kernelWidth(0),
- _kernelHeight(0), _activation(ir::Activation::NONE), _inputType(OperandType::FLOAT32)
-{
- // DO NOTHING
-}
-
-void MaxPoolLayer::maxPoolFloat32()
-{
- MAXPOOLING_PARAMETERS
- float output_activation_min, output_activation_max;
- CalculateActivationRangeFloat(_activation, &output_activation_min, &output_activation_max);
- op_params.float_activation_min = output_activation_min;
- op_params.float_activation_max = output_activation_max;
-
- nnfw::cker::MaxPool(op_params, convertTensorDescriptorToCkerShape(_inputDescr), _inputData.f,
- convertTensorDescriptorToCkerShape(_outputDescr), _outputData.f);
-}
-void MaxPoolLayer::maxPoolQuant8()
-{
- MAXPOOLING_PARAMETERS
- int32_t output_activation_min = 0;
- int32_t output_activation_max = 0;
- CalculateActivationRangeUint8(_activation, _outputDescr, &output_activation_min,
- &output_activation_max);
- op_params.quantized_activation_min = output_activation_min;
- op_params.quantized_activation_max = output_activation_max;
-
- nnfw::cker::MaxPool(op_params, convertTensorDescriptorToCkerShape(_inputDescr), _inputData.u8,
- convertTensorDescriptorToCkerShape(_outputDescr), _outputData.u8);
-}
-
-void MaxPoolLayer::configure(uint8_t *inputData, const TensorDescriptor inputDescr,
- const uint32_t paddingLeft, const uint32_t paddingRight,
- const uint32_t paddingTop, const uint32_t paddingBottom,
- const uint32_t strideWidth, const uint32_t strideHeight,
- const uint32_t kernelWidth, const uint32_t kernelHeight,
- const ir::Activation activation, uint8_t *outputData,
- const TensorDescriptor outputDescr)
-{
- _inputData.u8 = inputData;
-
- _inputDescr = inputDescr;
- _inputType = inputDescr.type;
- _paddingLeft = paddingLeft;
- _paddingRight = paddingRight;
- _paddingTop = paddingTop;
- _paddingBottom = paddingBottom;
- _strideWidth = strideWidth;
- _strideHeight = strideHeight;
- _kernelWidth = kernelWidth;
- _kernelHeight = kernelHeight;
- _activation = activation;
- _outputData.u8 = outputData;
- _outputDescr = outputDescr;
-}
-
-void MaxPoolLayer::run()
-{
- if (_inputType == OperandType::FLOAT32)
- {
- maxPoolFloat32();
- }
- else if (_inputType == OperandType::QUANT8_ASYMM)
- {
- maxPoolQuant8();
- }
-}
-
-#undef MAXPOOLING_PARAMETERS
-
-} // namespace kernel
-} // namespace cpu
-} // namespace backend
-} // namespace neurun