aboutsummaryrefslogtreecommitdiff
path: root/src/core/gpu/cl/kernels/ClDirectConv2dKernel.h
diff options
context:
space:
mode:
authorGeorgios Pinitas <georgios.pinitas@arm.com>2021-05-29 04:01:51 +0100
committerGeorgios Pinitas <georgios.pinitas@arm.com>2021-06-01 16:16:45 +0000
commit9fc3be6250964a2da74cb7a05cf8e352a896ac80 (patch)
treecdfeb80dfb556fb05851a8bb36377dcd3a808256 /src/core/gpu/cl/kernels/ClDirectConv2dKernel.h
parentb4bb6a03f717a320b935809fde795b3d6ec5a69f (diff)
downloadComputeLibrary-9fc3be6250964a2da74cb7a05cf8e352a896ac80.tar.gz
Fuse activation in ClDirectConv2dKernel for float types
Resolves: COMPMID-4430 Signed-off-by: Georgios Pinitas <georgios.pinitas@arm.com> Change-Id: I9a40033e09223d601460a7e52cc297c58c9a2737 Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/5757 Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/core/gpu/cl/kernels/ClDirectConv2dKernel.h')
-rw-r--r--src/core/gpu/cl/kernels/ClDirectConv2dKernel.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/core/gpu/cl/kernels/ClDirectConv2dKernel.h b/src/core/gpu/cl/kernels/ClDirectConv2dKernel.h
index ec76624e5c..e76666fd36 100644
--- a/src/core/gpu/cl/kernels/ClDirectConv2dKernel.h
+++ b/src/core/gpu/cl/kernels/ClDirectConv2dKernel.h
@@ -34,8 +34,7 @@ namespace opencl
{
namespace kernels
{
-/** Interface for the direct convolution kernel.
- */
+/** Interface for the direct convolution kernel. */
class ClDirectConv2dKernel : public IClKernel
{
public:
@@ -62,15 +61,18 @@ public:
* @param[out] dst Output tensor info.
* The 3rd dimensions must be equal to the 4th dimension of the @p kernels tensor. Data types supported: Same as @p src.
* @param[in] conv_info Contains padding and stride information described in @ref PadStrideInfo.
+ * @param[in] act_info Contains activaton information described in @ref ActivationLayerInfo.
*/
- void configure(const CLCompileContext &compile_context, ITensorInfo *src, ITensorInfo *weights, ITensorInfo *biases, ITensorInfo *dst, const PadStrideInfo &conv_info);
+ void configure(const CLCompileContext &compile_context, ITensorInfo *src, ITensorInfo *weights, ITensorInfo *biases, ITensorInfo *dst,
+ const PadStrideInfo &conv_info, const ActivationLayerInfo &act_info);
/** Static function to check if given info will lead to a valid configuration
*
* Similar to ClDirectConv2dKernel::configure()
*
* @return a status
*/
- static Status validate(const ITensorInfo *src, const ITensorInfo *weights, const ITensorInfo *biases, const ITensorInfo *dst, const PadStrideInfo &conv_info, const GPUTarget target);
+ static Status validate(const ITensorInfo *src, const ITensorInfo *weights, const ITensorInfo *biases, const ITensorInfo *dst,
+ const PadStrideInfo &conv_info, const ActivationLayerInfo &act_info, const GPUTarget target);
// Inherited methods overridden:
void run_op(ITensorPack &tensors, const Window &window, cl::CommandQueue &queue) override;