]> git.djapps.eu Git - pkg/ggml/sources/ggml/commitdiff
sycl : Reenabled mmvq path for the SYCL Nvidia Backend (llama/8372)
authorAlberto Cabrera Pérez <redacted>
Tue, 9 Jul 2024 14:03:15 +0000 (15:03 +0100)
committerGeorgi Gerganov <redacted>
Sat, 27 Jul 2024 15:26:12 +0000 (18:26 +0300)
* SYCL : Reenabled mmvq path for the SYCL Nvidia Backend

* Reduced verbosity of comment

src/ggml-sycl.cpp

index 21006cd7bebf7c682c3c55989d2598436a82121d..9c419ba896706400b2cef39fa1a6700a501ba344 100644 (file)
@@ -3658,6 +3658,10 @@ static void ggml_sycl_mul_mat(ggml_backend_sycl_context & ctx, const ggml_tensor
     use_mul_mat_q = use_mul_mat_q && (src1->ne[1] <= MMQ_MAX_BATCH_SIZE);
 #endif // SYCL_USE_XMX
 
+    // mmvq path is faster in the CUDA backend.
+    if (ctx.stream()->get_backend() == sycl::backend::ext_oneapi_cuda)
+        use_dequantize_mul_mat_vec = use_dequantize_mul_mat_vec && !use_mul_mat_vec_q;
+
     if (!split && src0->type == GGML_TYPE_F16 && ggml_is_permuted(src0) && ggml_is_permuted(src1) && src1->ne[1] == 1) {
         // KQ single-batch
         ggml_sycl_mul_mat_vec_p021(ctx, src0, src1, dst);