diff options
Diffstat (limited to 'src/dynamic_fusion/sketch/gpu/components/cl')
-rw-r--r-- | src/dynamic_fusion/sketch/gpu/components/cl/ClComponentCast.cpp | 11 | ||||
-rw-r--r-- | src/dynamic_fusion/sketch/gpu/components/cl/ClComponentCast.h | 6 |
2 files changed, 14 insertions, 3 deletions
diff --git a/src/dynamic_fusion/sketch/gpu/components/cl/ClComponentCast.cpp b/src/dynamic_fusion/sketch/gpu/components/cl/ClComponentCast.cpp index 007ba6380c..92933ae7a5 100644 --- a/src/dynamic_fusion/sketch/gpu/components/cl/ClComponentCast.cpp +++ b/src/dynamic_fusion/sketch/gpu/components/cl/ClComponentCast.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 Arm Limited. + * Copyright (c) 2022-2023 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -26,6 +26,7 @@ #include "arm_compute/core/Error.h" #include "src/core/CL/CLValidate.h" #include "src/dynamic_fusion/sketch/ArgumentPack.h" +#include "src/dynamic_fusion/sketch/gpu/ckw_driver/components/GpuCkwCast.h" #include "src/dynamic_fusion/sketch/gpu/template_writer/cl/ClTemplateCast.h" namespace arm_compute @@ -66,7 +67,8 @@ ClComponentCast::ClComponentCast(ComponentId id, const Attributes &attributes, const Settings &settings) : IGpuKernelComponent{ id, properties, tensors }, - _component_writer{ std::make_unique<ClTemplateCast>(id, tensors, attributes) } + _component_writer{ std::make_unique<ClTemplateCast>(id, tensors, attributes) }, + _ckw_driver{ std::make_unique<GpuCkwCast>(id, tensors, attributes) } { ARM_COMPUTE_UNUSED(attributes, settings); } @@ -77,6 +79,11 @@ const IGpuTemplateComponentWriter *ClComponentCast::template_writer() const { return _component_writer.get(); } + +const IGpuCkwComponentDriver *ClComponentCast::ckw_component_driver() const +{ + return _ckw_driver.get(); +} } // namespace dynamic_fusion } // namespace experimental } // namespace arm_compute diff --git a/src/dynamic_fusion/sketch/gpu/components/cl/ClComponentCast.h b/src/dynamic_fusion/sketch/gpu/components/cl/ClComponentCast.h index 84d6f07f16..174f9670b3 100644 --- a/src/dynamic_fusion/sketch/gpu/components/cl/ClComponentCast.h +++ b/src/dynamic_fusion/sketch/gpu/components/cl/ClComponentCast.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 Arm Limited. + * Copyright (c) 2022-2023 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -49,6 +49,7 @@ private: /** Forward declaration */ class ClTemplateCast; +class GpuCkwCast; class ClComponentCast final : public IGpuKernelComponent { @@ -117,6 +118,8 @@ public: ClComponentCast &operator=(ClComponentCast &&component) = default; /** Get template writer for the component */ const IGpuTemplateComponentWriter *template_writer() const override; + /** Get GPU kernel writer for the component */ + const IGpuCkwComponentDriver *ckw_component_driver() const override; /** Get component type */ GpuComponentType type() const override { @@ -125,6 +128,7 @@ public: private: std::unique_ptr<ClTemplateCast> _component_writer; + std::unique_ptr<GpuCkwCast> _ckw_driver; }; } // namespace dynamic_fusion } // namespace experimental |