From 5bd9cd349051c7dd741e91edcc93f258e62080de Mon Sep 17 00:00:00 2001 From: Iwan Kawrakow Date: Sat, 25 Oct 2025 11:12:16 +0300 Subject: [PATCH] Add disagnostics --- ggml/src/ggml-cuda/mmvq.cu | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/ggml/src/ggml-cuda/mmvq.cu b/ggml/src/ggml-cuda/mmvq.cu index be1a222f..b1d69061 100644 --- a/ggml/src/ggml-cuda/mmvq.cu +++ b/ggml/src/ggml-cuda/mmvq.cu @@ -253,7 +253,14 @@ void ggml_cuda_op_fused_mul_mat_vec_q_id(ggml_backend_cuda_context & ctx, GGML_ASSERT(ne10 % QK8_1 == 0); GGML_ASSERT(src0->ne[3] == 1 && src1->ne[3] == 1 && dst->ne[3] == 1); GGML_ASSERT(src1->ne[1] == 1 && src1->ne[2] == 1); - GGML_ASSERT(!ids || ids->ne[0] == dst->ne[2]); + if (ids && ids->ne[0] != dst->ne[2]) { + printf("%s(%s->%s): unexpected situation\n", __func__, src0->name, dst->name); + printf(" src0 = %ld x %ld x %ld x %ld\n", src0->ne[0], src0->ne[1], src0->ne[2], src0->ne[3]); + printf(" src1 = %ld x %ld x %ld x %ld\n", src1->ne[0], src1->ne[1], src1->ne[2], src1->ne[3]); + printf(" ids = %ld x %ld x %ld x %ld\n", ids->ne[0], ids->ne[1], ids->ne[2], ids->ne[3]); + printf(" dst = %ld x %ld x %ld x %ld\n", dst->ne[0], dst->ne[1], dst->ne[2], dst->ne[3]); + GGML_ABORT("Fatal error"); + } const int64_t ne0 = dst->ne[0];