aboutsummaryrefslogtreecommitdiff
path: root/src/core/CL/cl_kernels/activation_quant_helpers.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/CL/cl_kernels/activation_quant_helpers.h')
-rw-r--r--src/core/CL/cl_kernels/activation_quant_helpers.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/core/CL/cl_kernels/activation_quant_helpers.h b/src/core/CL/cl_kernels/activation_quant_helpers.h
index 0e4eb2b32e..7eaf082df3 100644
--- a/src/core/CL/cl_kernels/activation_quant_helpers.h
+++ b/src/core/CL/cl_kernels/activation_quant_helpers.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2019 ARM Limited.
+ * Copyright (c) 2019-2020 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -48,6 +48,11 @@ inline TYPE lu_brelu_op(TYPE x)
{
return min(max(x, (TYPE)B_VAL), (TYPE)A_VAL);
}
+// Hard Swish Activation
+inline TYPE hard_swish_op(TYPE x)
+{
+ return (x * ((min(max((TYPE)(x + (TYPE)3.f), (TYPE)0.f), (TYPE)6.f)) * (TYPE)0.166666667f));
+}
#define ACTIVATION_OP2(op, x) op##_op(x)
#define ACTIVATION_OP(op, x) ACTIVATION_OP2(op, x)
@@ -81,4 +86,4 @@ inline TYPE lu_brelu_op(TYPE x)
({ \
data = ACTIVATION_OP(act, data); \
})
-#endif /* defined(S1_VAL) && defined(S2_VAL) */ \ No newline at end of file
+#endif /* defined(S1_VAL) && defined(S2_VAL) */