diff options
author | Giorgio Arena <giorgio.arena@arm.com> | 2022-03-03 10:09:01 +0000 |
---|---|---|
committer | Giorgio Arena <giorgio.arena@arm.com> | 2022-03-08 10:41:03 +0000 |
commit | 232c45253a84c16fc70eae6406cac5f4048efaca (patch) | |
tree | 32aa46ed0cb2bdc9877709d0573f45778894fefe /src/core/CL/ICLKernel.h | |
parent | 4cbcb840caca1346de5f2271b67e4ede17b72734 (diff) | |
download | ComputeLibrary-232c45253a84c16fc70eae6406cac5f4048efaca.tar.gz |
Merge kernel prototype patch
Resolves: COMPMID-5151
Signed-off-by: Giorgio Arena <giorgio.arena@arm.com>
Change-Id: Ic4024d5cd4819fe917a1d49621f1866ae2e90a37
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/7260
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: SiCong Li <sicong.li@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/core/CL/ICLKernel.h')
-rw-r--r-- | src/core/CL/ICLKernel.h | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/src/core/CL/ICLKernel.h b/src/core/CL/ICLKernel.h index bc138e7e3f..4c8028e42a 100644 --- a/src/core/CL/ICLKernel.h +++ b/src/core/CL/ICLKernel.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016-2021 Arm Limited. + * Copyright (c) 2016-2022 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -37,6 +37,20 @@ #include <string> +#if defined(ENABLE_EXPERIMENTAL_DYNAMIC_FUSION) +namespace arm_compute +{ +namespace experimental +{ +namespace dynamic_fusion +{ +struct TensorBinding; +struct ClExecutionDescriptor; +} // namespace dynamic_fusion +} // namespace experimental +} // namespace arm_compute +#endif // defined(ENABLE_EXPERIMENTAL_DYNAMIC_FUSION) + namespace arm_compute { namespace @@ -63,7 +77,6 @@ template <typename T> class ICLArray; class ICLTensor; class Window; - /** Common interface for all the OpenCL kernels */ class ICLKernel : public IKernel { @@ -323,6 +336,14 @@ public: { ARM_COMPUTE_UNUSED(tensors, window, queue); } + +#if defined(ENABLE_EXPERIMENTAL_DYNAMIC_FUSION) + /// The execution is carried out through run_op method. But the run_op method needs to be extended to include ClExecutionDescriptor as now LWS GWS tuning will be separated from the IKernel + virtual void run_composite_op(experimental::dynamic_fusion::TensorBinding &tensors, const Window &window, cl::CommandQueue &queue, const experimental::dynamic_fusion::ClExecutionDescriptor &exec_desc) + { + ARM_COMPUTE_UNUSED(tensors, window, queue, exec_desc); + } +#endif // defined(ENABLE_EXPERIMENTAL_DYNAMIC_FUSION) /** Add the passed parameters to the object's kernel's arguments starting from the index idx. * * @param[in,out] idx Index at which to start adding the arguments. Will be incremented by the number of kernel arguments set. |