Spaces:
Running
Running
Akarshan Biswas
commited on
Commit
·
723b8b4
1
Parent(s):
2094cb7
SYCL: Disable f16 Unary OPs as not supported by the kernels (llama/12201)
Browse files
ggml/src/ggml-sycl/ggml-sycl.cpp
CHANGED
|
@@ -41,6 +41,7 @@
|
|
| 41 |
#include "ggml-sycl/gemm.hpp"
|
| 42 |
#include "ggml-sycl/sycl_hw.hpp"
|
| 43 |
#include "ggml-sycl/getrows.hpp"
|
|
|
|
| 44 |
|
| 45 |
static bool g_sycl_loaded = false;
|
| 46 |
int g_ggml_sycl_debug = 0;
|
|
@@ -3864,7 +3865,7 @@ static bool ggml_backend_sycl_device_supports_op(ggml_backend_dev_t dev, const g
|
|
| 3864 |
case GGML_UNARY_OP_GELU_QUICK:
|
| 3865 |
case GGML_UNARY_OP_TANH:
|
| 3866 |
case GGML_UNARY_OP_EXP:
|
| 3867 |
-
return ggml_is_contiguous(op->src[0]);
|
| 3868 |
default:
|
| 3869 |
return false;
|
| 3870 |
}
|
|
@@ -3981,23 +3982,24 @@ static bool ggml_backend_sycl_device_supports_op(ggml_backend_dev_t dev, const g
|
|
| 3981 |
case GGML_OP_VIEW:
|
| 3982 |
case GGML_OP_PERMUTE:
|
| 3983 |
case GGML_OP_TRANSPOSE:
|
|
|
|
| 3984 |
case GGML_OP_ADD:
|
| 3985 |
case GGML_OP_ADD1:
|
| 3986 |
-
case GGML_OP_LOG:
|
| 3987 |
case GGML_OP_SUB:
|
| 3988 |
case GGML_OP_MUL:
|
| 3989 |
case GGML_OP_DIV:
|
| 3990 |
-
return true;
|
| 3991 |
-
case GGML_OP_NORM:
|
| 3992 |
-
case GGML_OP_RMS_NORM:
|
| 3993 |
-
case GGML_OP_GROUP_NORM:
|
| 3994 |
-
return ggml_is_contiguous(op->src[0]);
|
| 3995 |
-
case GGML_OP_SCALE:
|
| 3996 |
case GGML_OP_SQR:
|
| 3997 |
case GGML_OP_SQRT:
|
| 3998 |
case GGML_OP_SIN:
|
| 3999 |
case GGML_OP_COS:
|
| 4000 |
case GGML_OP_CLAMP:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 4001 |
return true;
|
| 4002 |
case GGML_OP_CONT:
|
| 4003 |
return op->src[0]->type != GGML_TYPE_BF16;
|
|
|
|
| 41 |
#include "ggml-sycl/gemm.hpp"
|
| 42 |
#include "ggml-sycl/sycl_hw.hpp"
|
| 43 |
#include "ggml-sycl/getrows.hpp"
|
| 44 |
+
#include "ggml.h"
|
| 45 |
|
| 46 |
static bool g_sycl_loaded = false;
|
| 47 |
int g_ggml_sycl_debug = 0;
|
|
|
|
| 3865 |
case GGML_UNARY_OP_GELU_QUICK:
|
| 3866 |
case GGML_UNARY_OP_TANH:
|
| 3867 |
case GGML_UNARY_OP_EXP:
|
| 3868 |
+
return ggml_is_contiguous(op->src[0]) && (op->src[0]->type == GGML_TYPE_F32);
|
| 3869 |
default:
|
| 3870 |
return false;
|
| 3871 |
}
|
|
|
|
| 3982 |
case GGML_OP_VIEW:
|
| 3983 |
case GGML_OP_PERMUTE:
|
| 3984 |
case GGML_OP_TRANSPOSE:
|
| 3985 |
+
return true;
|
| 3986 |
case GGML_OP_ADD:
|
| 3987 |
case GGML_OP_ADD1:
|
|
|
|
| 3988 |
case GGML_OP_SUB:
|
| 3989 |
case GGML_OP_MUL:
|
| 3990 |
case GGML_OP_DIV:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3991 |
case GGML_OP_SQR:
|
| 3992 |
case GGML_OP_SQRT:
|
| 3993 |
case GGML_OP_SIN:
|
| 3994 |
case GGML_OP_COS:
|
| 3995 |
case GGML_OP_CLAMP:
|
| 3996 |
+
case GGML_OP_LOG:
|
| 3997 |
+
return (op->src[0]->type == GGML_TYPE_F32);
|
| 3998 |
+
case GGML_OP_NORM:
|
| 3999 |
+
case GGML_OP_RMS_NORM:
|
| 4000 |
+
case GGML_OP_GROUP_NORM:
|
| 4001 |
+
return ggml_is_contiguous(op->src[0]);
|
| 4002 |
+
case GGML_OP_SCALE:
|
| 4003 |
return true;
|
| 4004 |
case GGML_OP_CONT:
|
| 4005 |
return op->src[0]->type != GGML_TYPE_BF16;
|