aboutsummaryrefslogtreecommitdiff
path: root/arm_compute/runtime/FunctionDescriptors.h
diff options
context:
space:
mode:
authorAdnan AlSinan <adnan.alsinan@arm.com>2021-09-01 15:32:03 +0100
committerAdnan AlSinan <adnan.alsinan@arm.com>2021-09-15 15:12:09 +0000
commite4563a032aaa71de5efdb83fc04ff2933338e02d (patch)
treef722dbea27753e0da68485df0592a128b72f747b /arm_compute/runtime/FunctionDescriptors.h
parente42a87ffd23a334b802b47a52ec28ad6c90bfbf0 (diff)
downloadComputeLibrary-e4563a032aaa71de5efdb83fc04ff2933338e02d.tar.gz
Adds Conv3d reference implementation support.
Expands the interface with the following items: - Size3D Class. - Conv3dInfo Struct. - Padding3D Struct. - Add 'NDHWC' to supported Tensor Data Layouts. - Add function to compute expected size of Conv3d. Resolves COMPMID-4658 & COMPMID-4657 Signed-off-by: Adnan AlSinan <adnan.alsinan@arm.com> Change-Id: Ic7452c48461eedaa38eaf3ac458f54b031e7dfa8 Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/6187 Reviewed-by: Giorgio Arena <giorgio.arena@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'arm_compute/runtime/FunctionDescriptors.h')
-rw-r--r--arm_compute/runtime/FunctionDescriptors.h28
1 files changed, 26 insertions, 2 deletions
diff --git a/arm_compute/runtime/FunctionDescriptors.h b/arm_compute/runtime/FunctionDescriptors.h
index 1f4216eb21..07a8f6600e 100644
--- a/arm_compute/runtime/FunctionDescriptors.h
+++ b/arm_compute/runtime/FunctionDescriptors.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2019-2020 Arm Limited.
+ * Copyright (c) 2019-2021 Arm Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -52,7 +52,7 @@ struct FFT2DInfo
FFTDirection direction{ FFTDirection::Forward }; /**< Direction of the FFT. */
};
-/** Descriptor used by the Convolution function */
+/** Descriptor used by the 2d Convolution function */
struct Conv2dInfo
{
Conv2dInfo() = default;
@@ -72,5 +72,29 @@ struct Conv2dInfo
bool enable_fast_math{ false };
unsigned int num_groups{ 1 };
};
+
+/** Descriptor used by the 3d Convolution function */
+struct Conv3dInfo
+{
+ Conv3dInfo() = default;
+
+ Conv3dInfo(const Size3D &stride,
+ const Padding3D &padding,
+ const ActivationLayerInfo &act_info,
+ const Size3D &dilation,
+ const DimensionRoundingType &round_type,
+ bool enable_fast_math)
+ : stride(stride), padding(padding), act_info(act_info), dilation(dilation), round_type(round_type), enable_fast_math(enable_fast_math)
+ {
+ }
+
+ Size3D stride{ 1U, 1U, 1U };
+ Padding3D padding{};
+ ActivationLayerInfo act_info{};
+ Size3D dilation{ 1U, 1U, 1U };
+ DimensionRoundingType round_type{};
+ bool enable_fast_math{ false };
+};
+
} // namespace arm_compute
#endif /* ARM_COMPUTE_RUNTIME_FUNCTION_DESCRIPTORS_H */