aboutsummaryrefslogtreecommitdiff
path: root/src/cpu/kernels/CpuIm2ColKernel.h
diff options
context:
space:
mode:
authorPablo Marquez Tello <pablo.tello@arm.com>2023-10-16 14:14:14 +0100
committerPablo Marquez Tello <pablo.tello@arm.com>2023-10-30 14:30:21 +0000
commite5362e7e5dbccf81c5296a7e77154e11e1a14d2f (patch)
treef1a00380b62d62da8ecd5b839652275b9b14d9ac /src/cpu/kernels/CpuIm2ColKernel.h
parentdfcd41af4eea67f7c348c8688e05cb12e3eee5f5 (diff)
downloadComputeLibrary-e5362e7e5dbccf81c5296a7e77154e11e1a14d2f.tar.gz
DirectConv and Im2Col changes to enable fp16 in armv8a multi_isa builds
* FP16 kernels must be instantiated in fp16.cpp. * Partially resolves MLCE-1102 Change-Id: Iab9c29dbfd89358f2f663862ff5010c88aeccf8c Signed-off-by: Pablo Marquez Tello <pablo.tello@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/10496 Reviewed-by: Anitha Raj <Anitha.Raj@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com> Benchmark: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/cpu/kernels/CpuIm2ColKernel.h')
-rw-r--r--src/cpu/kernels/CpuIm2ColKernel.h26
1 files changed, 13 insertions, 13 deletions
diff --git a/src/cpu/kernels/CpuIm2ColKernel.h b/src/cpu/kernels/CpuIm2ColKernel.h
index 2cb26179ce..ae7162cccf 100644
--- a/src/cpu/kernels/CpuIm2ColKernel.h
+++ b/src/cpu/kernels/CpuIm2ColKernel.h
@@ -21,8 +21,8 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
-#ifndef ARM_COMPUTE_CPU_IM2COL_KERNEL_H
-#define ARM_COMPUTE_CPU_IM2COL_KERNEL_H
+#ifndef ACL_SRC_CPU_KERNELS_CPUIM2COLKERNEL_H
+#define ACL_SRC_CPU_KERNELS_CPUIM2COLKERNEL_H
#include "arm_compute/core/Size2D.h"
@@ -115,20 +115,20 @@ public:
size_t get_mws(const CPUInfo &platform, size_t thread_count) const override;
private:
- /** Template function to run im2col
- *
- * @param[in] src The input tensor info
- * @param[out] dst The output tensor info
- * @param[in] window Region on which to execute the kernel. (Must be a valid region of the window returned by window()).
- */
- template <typename T, bool has_pads, bool is_nchw>
- void run_im2col(const ITensor *src, ITensor *dst, const Window &window);
-
/** Common signature for all the specialised im2col functions
*
* @param[in] window Region on which to execute the kernel.
*/
- using Im2ColFunctionPtr = void (CpuIm2ColKernel::*)(const ITensor *src, ITensor *dst, const Window &window);
+ using Im2ColFunctionPtr = void (*)(const ITensor *src,
+ ITensor *dst,
+ const Window &window,
+ DataLayout data_layout,
+ const PadStrideInfo &conv_info,
+ std::pair<unsigned int, unsigned int> convolved_dims,
+ const Size2D &kernel_dims,
+ const Size2D &dilation,
+ uint32_t input_pad_right,
+ bool has_bias);
Im2ColFunctionPtr _func{nullptr};
std::pair<unsigned int, unsigned int> _convolved_dims{};
@@ -143,4 +143,4 @@ private:
} // namespace kernels
} // namespace cpu
} // namespace arm_compute
-#endif /*ARM_COMPUTE_CPU_IM2COL_KERNEL_H */
+#endif // ACL_SRC_CPU_KERNELS_CPUIM2COLKERNEL_H