diff options
author | Gunes Bayir <gunes.bayir@arm.com> | 2023-07-25 17:00:33 +0100 |
---|---|---|
committer | Jakub Sujak <jakub.sujak@arm.com> | 2023-08-30 13:48:07 +0000 |
commit | 91cb7336400acc857e20086a23692f99fe11be9c (patch) | |
tree | 188c96c61a197ab3a21106d195be4a6a4f63ca6c /src/dynamic_fusion/sketch/gpu/components/cl/ClComponentResize.h | |
parent | d0d8f2e61039826685aa076347eacce526e8c74b (diff) | |
download | ComputeLibrary-91cb7336400acc857e20086a23692f99fe11be9c.tar.gz |
Port Resize operator to CKW
Use Compute Kernel Writer (CKW) to generate code for Resize operator in
the Dynamic Fusion interface.
Supports Nearest Neighbor and Bilinear interpolation methods.
Resolves: COMPMID-6265
Change-Id: Ib0a5158bd4208123c84f6a1dc54f29d82fd55dcd
Signed-off-by: Gunes Bayir <gunes.bayir@arm.com>
Signed-off-by: Jakub Sujak <jakub.sujak@arm.com>
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/10174
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Benchmark: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/dynamic_fusion/sketch/gpu/components/cl/ClComponentResize.h')
-rw-r--r-- | src/dynamic_fusion/sketch/gpu/components/cl/ClComponentResize.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/dynamic_fusion/sketch/gpu/components/cl/ClComponentResize.h b/src/dynamic_fusion/sketch/gpu/components/cl/ClComponentResize.h index 87d5a61ce3..474524f8fc 100644 --- a/src/dynamic_fusion/sketch/gpu/components/cl/ClComponentResize.h +++ b/src/dynamic_fusion/sketch/gpu/components/cl/ClComponentResize.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 Arm Limited. + * Copyright (c) 2022-2023 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -41,7 +41,11 @@ template <typename T> class ArgumentPack; /** Forward declaration */ +#ifndef ACL_INTERNAL_TEST_CKW_IN_DF class ClTemplateResize; +#else // ACL_INTERNAL_TEST_CKW_IN_DF +class GpuCkwResize; +#endif // ACL_INTERNAL_TEST_CKW_IN_DF class ClComponentResize final : public IGpuKernelComponent { @@ -107,8 +111,12 @@ public: /** Allow instances of this class to be moved */ ClComponentResize &operator=(ClComponentResize &&component) = default; - /** Get template writer for the component */ + /** Get writer for the component */ +#ifndef ACL_INTERNAL_TEST_CKW_IN_DF const IGpuTemplateComponentWriter *template_writer() const override; +#else // ACL_INTERNAL_TEST_CKW_IN_DF + const IGpuCkwComponentDriver *ckw_component_driver() const override; +#endif // ACL_INTERNAL_TEST_CKW_IN_DF /** Get component type */ GpuComponentType type() const override @@ -117,7 +125,11 @@ public: } private: +#ifndef ACL_INTERNAL_TEST_CKW_IN_DF std::unique_ptr<ClTemplateResize> _component_writer; +#else // ACL_INTERNAL_TEST_CKW_IN_DF + std::unique_ptr<GpuCkwResize> _component_writer; +#endif // ACL_INTERNAL_TEST_CKW_IN_DF }; } // namespace dynamic_fusion |