aboutsummaryrefslogtreecommitdiff
path: root/arm_compute/graph
diff options
context:
space:
mode:
authorSang-Hoon Park <sang-hoon.park@arm.com>2020-03-13 11:31:53 +0000
committerSang-Hoon Park <sang-hoon.park@arm.com>2020-03-13 16:11:38 +0000
commit104fbd7b533c40f19465c85e884f10ae500e639e (patch)
tree10b6fb262fe72e5afeb13ba5b8f491fb3c1a825e /arm_compute/graph
parent797b76b1aef38ea3be6f68ae2bf323048e9beff8 (diff)
downloadComputeLibrary-104fbd7b533c40f19465c85e884f10ae500e639e.tar.gz
COMPMID-3221: Add DeconvolutionLayerDescriptor
A new struct for DeconvolutionLayerNode is added for better extendability. Change-Id: I935277e8073a8295de7b0059b946cb637085f1ff Signed-off-by: Sang-Hoon Park <sang-hoon.park@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/2883 Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'arm_compute/graph')
-rw-r--r--arm_compute/graph/LayerDescriptors.h16
-rw-r--r--arm_compute/graph/nodes/DeconvolutionLayerNode.h9
2 files changed, 20 insertions, 5 deletions
diff --git a/arm_compute/graph/LayerDescriptors.h b/arm_compute/graph/LayerDescriptors.h
index af69682fa3..0cf203174e 100644
--- a/arm_compute/graph/LayerDescriptors.h
+++ b/arm_compute/graph/LayerDescriptors.h
@@ -86,6 +86,22 @@ struct EltwiseLayerDescriptor
RoundingPolicy r_policy; /**< Rounding policy */
};
+/** Deconvolution layer descriptor */
+struct DeconvolutionLayerDescriptor
+{
+ /** Constructor
+ *
+ * @param[in] info Dedonvolution layer attributes
+ * @param[in] out_quant_info (Optional) Output quantization infomation
+ */
+ DeconvolutionLayerDescriptor(PadStrideInfo info, QuantizationInfo out_quant_info = QuantizationInfo())
+ : info(info), out_quant_info(out_quant_info)
+ {
+ }
+
+ PadStrideInfo info; /**< Padding and stride information */
+ QuantizationInfo out_quant_info; /**< Output quantization information */
+};
} // namespace descriptor
} // namespace graph
} // namespace arm_compute
diff --git a/arm_compute/graph/nodes/DeconvolutionLayerNode.h b/arm_compute/graph/nodes/DeconvolutionLayerNode.h
index 5633898366..a5efdfb3bc 100644
--- a/arm_compute/graph/nodes/DeconvolutionLayerNode.h
+++ b/arm_compute/graph/nodes/DeconvolutionLayerNode.h
@@ -25,6 +25,7 @@
#define ARM_COMPUTE_GRAPH_DECONVOLUTION_LAYER_NODE_H
#include "arm_compute/graph/INode.h"
+#include "arm_compute/graph/LayerDescriptors.h"
namespace arm_compute
{
@@ -36,10 +37,9 @@ class DeconvolutionLayerNode final : public INode
public:
/** Constructor
*
- * @param[in] info DeConvolution layer attributes
- * @param[in] out_quant_info (Optional) Output quantization infomation
+ * @param[in] descriptor Contains information used by this layer described in @ref descriptors::DeconvolutionLayerDescriptor
*/
- DeconvolutionLayerNode(PadStrideInfo info, QuantizationInfo out_quant_info = QuantizationInfo());
+ DeconvolutionLayerNode(const descriptors::DeconvolutionLayerDescriptor &descriptor);
/** Deconvolution metadata accessor
*
* @return Deconvolution information
@@ -64,8 +64,7 @@ public:
void accept(INodeVisitor &v) override;
private:
- PadStrideInfo _info;
- QuantizationInfo _out_quant_info;
+ descriptors::DeconvolutionLayerDescriptor descriptor;
};
} // namespace graph
} // namespace arm_compute