From: Georgi Gerganov Date: Sun, 3 Dec 2023 13:56:22 +0000 (+0200) Subject: ggml : fix soft max out-of-bounds access (#4307) X-Git-Tag: upstream/0.0.4488~2882 X-Git-Url: https://git.djapps.eu/?a=commitdiff_plain;h=adf3de4f69ff7e44131222f05f9c7447ac0be3cb;p=pkg%2Fggml%2Fsources%2Fllama.cpp ggml : fix soft max out-of-bounds access (#4307) ggml-ci --- diff --git a/ggml.c b/ggml.c index e2687ef4..cecb1270 100644 --- a/ggml.c +++ b/ggml.c @@ -15629,7 +15629,6 @@ static int ggml_get_n_tasks(struct ggml_tensor * node, int n_threads) { } break; case GGML_OP_DIAG_MASK_ZERO: case GGML_OP_DIAG_MASK_INF: - case GGML_OP_SOFT_MAX: case GGML_OP_SOFT_MAX_BACK: case GGML_OP_ROPE: case GGML_OP_ROPE_BACK: @@ -15645,6 +15644,10 @@ static int ggml_get_n_tasks(struct ggml_tensor * node, int n_threads) { { n_tasks = 1; //TODO } break; + case GGML_OP_SOFT_MAX: + { + n_tasks = MIN(MIN(4, n_threads), ggml_nrows(node->src[0])); + } break; case GGML_OP_CONV_TRANSPOSE_1D: { n_tasks = n_threads;