summaryrefslogtreecommitdiff
path: root/ggml-backend.c
diff options
context:
space:
mode:
authorbssrdf <merlintiger@hotmail.com>2023-12-29 03:32:31 -0500
committerGeorgi Gerganov <ggerganov@gmail.com>2023-12-29 14:54:19 +0200
commitafc8c192919f04613a92d40391bff4c8cd99856b (patch)
tree1959cf18947a06b21b9291ea415e690bdeb9fc67 /ggml-backend.c
parentca38b8d334baa724bd6c9402470931d26427466f (diff)
ggml : fix some mul mat cases + add tests for src1 F16 (ggml/669)
* fixed mul-mat error for old GPUs * style fixes * add mul mat src1 f16 test cases, fix more cases ggml-ci --------- Co-authored-by: bssrdf <bssrdf@gmail.com> Co-authored-by: slaren <slarengh@gmail.com>
Diffstat (limited to 'ggml-backend.c')
-rw-r--r--ggml-backend.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/ggml-backend.c b/ggml-backend.c
index 526ce732..2c375206 100644
--- a/ggml-backend.c
+++ b/ggml-backend.c
@@ -614,10 +614,14 @@ static void ggml_backend_cpu_graph_compute(ggml_backend_t backend, struct ggml_c
}
static bool ggml_backend_cpu_supports_op(ggml_backend_t backend, const struct ggml_tensor * op) {
- return true;
+ switch (op->op) {
+ case GGML_OP_MUL_MAT:
+ return op->src[1]->type == GGML_TYPE_F32 || op->src[1]->type == ggml_internal_get_type_traits(op->src[0]->type).vec_dot_type;
+ default:
+ return true;
+ }
GGML_UNUSED(backend);
- GGML_UNUSED(op);
}
static struct ggml_backend_i cpu_backend_i = {